فهرست منبع

1.调整多页面细节问题
2.修改小红花界面
3.增加小红花获取详情界面
4.一进入签到
5.小红花效果修改

FailedToRead 3 سال پیش
والد
کامیت
cb383b9b58
62فایلهای تغییر یافته به همراه837 افزوده شده و 267 حذف شده
  1. 13 11
      .idea/misc.xml
  2. BIN
      app/src/fragmentRecommend/drawable/main_left_tab_layout_character.png
  3. BIN
      app/src/fragmentRecommend/drawable/main_left_tab_layout_follow.png
  4. BIN
      app/src/fragmentRecommend/drawable/main_left_tab_layout_recommend.png
  5. BIN
      app/src/fragmentRecommend/drawable/main_tab_layout_myinfo.png
  6. 1 1
      app/src/fragmentRecommend/drawable/slidevideo_switch_track_selector.xml
  7. 1 1
      app/src/fragmentRecommend/drawable/switch_thumb.xml
  8. 2 1
      app/src/fragmentRecommend/layout/fragment_main_recommend.xml
  9. 1 1
      app/src/fragmentRecommend/layout/slide_video_marqueen_item.xml
  10. BIN
      app/src/fragmentUser/drawable/fragment_my_attention.png
  11. BIN
      app/src/fragmentUser/drawable/fragment_my_collection.png
  12. BIN
      app/src/fragmentUser/drawable/fragment_my_customer_service.png
  13. BIN
      app/src/fragmentUser/drawable/fragment_my_message_notification.png
  14. 1 2
      app/src/fragmentUser/layout/adapter_item_record_authority.xml
  15. 1 0
      app/src/main/java/com/edufound/reader/activity/MainActivity.java
  16. 6 3
      app/src/main/java/com/edufound/reader/activity/MyCollectionActivity.java
  17. 45 8
      app/src/main/java/com/edufound/reader/activity/SafflowerActivity.java
  18. 10 0
      app/src/main/java/com/edufound/reader/apiserver/UserApiServerImpl.java
  19. 127 59
      app/src/main/java/com/edufound/reader/base/BaseActivity.java
  20. 19 1
      app/src/main/java/com/edufound/reader/base/BaseFragment.java
  21. 95 0
      app/src/main/java/com/edufound/reader/bean/SignBean.java
  22. 5 0
      app/src/main/java/com/edufound/reader/contract/MainContract.java
  23. 2 0
      app/src/main/java/com/edufound/reader/contract/MyCollectionContract.java
  24. 11 0
      app/src/main/java/com/edufound/reader/contract/SafflowerContract.java
  25. 114 0
      app/src/main/java/com/edufound/reader/cusview/CusToast.java
  26. 4 3
      app/src/main/java/com/edufound/reader/cusview/RvListJzvdStd.java
  27. 1 1
      app/src/main/java/com/edufound/reader/fragment/MyTabFragment.java
  28. 6 3
      app/src/main/java/com/edufound/reader/model/MainModel.java
  29. 5 0
      app/src/main/java/com/edufound/reader/model/SafflowerModel.java
  30. 2 0
      app/src/main/java/com/edufound/reader/popwindow/PopWindowUtil.java
  31. 19 1
      app/src/main/java/com/edufound/reader/presenter/MainPresenter.java
  32. 49 33
      app/src/main/java/com/edufound/reader/presenter/MyCollectionPresenter.java
  33. 6 11
      app/src/main/java/com/edufound/reader/presenter/RecommendFragmentPresenter.java
  34. 54 0
      app/src/main/java/com/edufound/reader/presenter/SafflowerPresenter.java
  35. 0 9
      app/src/main/java/com/edufound/reader/util/Consts.java
  36. 2 2
      app/src/main/res/drawable/activity_saffloer_sigin_layout_divier.xml
  37. BIN
      app/src/main/res/drawable/activity_saffloer_sign_layout_item_des_true.png
  38. BIN
      app/src/main/res/drawable/activity_safflower_bg.png
  39. BIN
      app/src/main/res/drawable/activity_safflower_des.png
  40. BIN
      app/src/main/res/drawable/activity_safflower_des_pop_bg.png
  41. BIN
      app/src/main/res/drawable/app_exit_icon.png
  42. BIN
      app/src/main/res/drawable/main_left_tab_layout_character.png
  43. BIN
      app/src/main/res/drawable/main_left_tab_layout_follow.png
  44. BIN
      app/src/main/res/drawable/main_left_tab_layout_recommend.png
  45. BIN
      app/src/main/res/drawable/main_tab_layout_myinfo.png
  46. BIN
      app/src/main/res/drawable/splash_bg.jpg
  47. BIN
      app/src/main/res/drawable/testhua.png
  48. BIN
      app/src/main/res/drawable/toast_bg.9.png
  49. 3 4
      app/src/main/res/layout/activity_customerservice.xml
  50. 22 21
      app/src/main/res/layout/activity_main.xml
  51. 2 4
      app/src/main/res/layout/activity_otherrecord.xml
  52. 110 57
      app/src/main/res/layout/activity_saffloer.xml
  53. 30 0
      app/src/main/res/layout/activity_saffloer_window_item.xml
  54. 7 7
      app/src/main/res/layout/activity_userinfo_setting.xml
  55. 1 2
      app/src/main/res/layout/adapter_item_record_user.xml
  56. 3 4
      app/src/main/res/layout/adapter_item_safflower.xml
  57. 2 2
      app/src/main/res/layout/cusjzplayer_controller.xml
  58. 2 1
      app/src/main/res/layout/fragment_main_character.xml
  59. 13 11
      app/src/main/res/layout/fragment_main_user.xml
  60. 2 1
      app/src/main/res/layout/popupwindow_exit_app.xml
  61. 11 2
      app/src/main/res/layout/popupwindow_record_status.xml
  62. 27 0
      app/src/main/res/layout/toast.xml

+ 13 - 11
.idea/misc.xml

@@ -29,11 +29,11 @@
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/fragmentRecommend/drawable/slidevideo_switch_track_s.xml" value="0.37890625" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/fragmentRecommend/drawable/slidevideo_switch_track_selector.xml" value="0.32734375" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/fragmentRecommend/drawable/switch_thumb.xml" value="0.37890625" />
-        <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/fragmentRecommend/layout/fragment_main_recommend.xml" value="0.14" />
+        <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/fragmentRecommend/layout/fragment_main_recommend.xml" value="0.1" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/fragmentRecommend/layout/popup_myorder.xml" value="0.2889294403892944" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/fragmentRecommend/layout/popupwindow_myorder.xml" value="0.2889294403892944" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/fragmentRecommend/layout/popupwindow_record_remove.xml" value="0.2980535279805353" />
-        <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/fragmentRecommend/layout/slide_video_marqueen_item.xml" value="0.75" />
+        <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/fragmentRecommend/layout/slide_video_marqueen_item.xml" value="0.5" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/fragmentUser/drawable/fragment_user_info_divider.xml" value="0.31640625" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/fragmentUser/layout/activity_mycollection.xml" value="0.2" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/fragmentUser/layout/activity_myfollow.xml" value="0.12" />
@@ -63,15 +63,16 @@
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/activity_alert_login.xml" value="0.22" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/activity_comment.xml" value="0.33" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/activity_crash_dialog.xml" value="0.12" />
-        <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/activity_customerservice.xml" value="0.33" />
-        <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/activity_main.xml" value="0.12" />
+        <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/activity_customerservice.xml" value="0.5384615384615384" />
+        <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/activity_main.xml" value="0.3107843137254902" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/activity_message.xml" value="0.14" />
-        <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/activity_otherrecord.xml" value="0.303125" />
+        <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/activity_otherrecord.xml" value="0.43462897526501765" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/activity_pay.xml" value="0.2" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/activity_pay_item.xml" value="0.75" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/activity_record.xml" value="0.33" />
-        <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/activity_saffloer.xml" value="0.22" />
-        <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/activity_saffloer_sign_layout_item.xml" value="0.5" />
+        <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/activity_saffloer.xml" value="0.25" />
+        <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/activity_saffloer_sign_layout_item.xml" value="0.67" />
+        <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/activity_saffloer_window_item.xml" value="0.6294277929155313" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/activity_userinfo_setting.xml" value="0.33" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/activity_video.xml" value="0.18824087245139876" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/activity_web.xml" value="0.2731143552311436" />
@@ -84,21 +85,22 @@
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/adapter_item_record.xml" value="0.4539641943734015" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/adapter_item_record_user.xml" value="0.67" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/adapter_item_safflower.xml" value="0.67" />
-        <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/adapter_item_slidevideo.xml" value="0.25" />
+        <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/adapter_item_slidevideo.xml" value="0.1" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/anim_getfollow.xml" value="0.33" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/curjzplayer_controller.xml" value="0.16" />
-        <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/cusjzplayer_controller.xml" value="0.5029154518950437" />
+        <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/cusjzplayer_controller.xml" value="0.9" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/first_tip.xml" value="0.9" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/fragment_main_character.xml" value="0.18" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/fragment_main_recommend.xml" value="0.2" />
-        <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/fragment_main_user.xml" value="0.9" />
+        <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/fragment_main_user.xml" value="0.5301204819277109" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/fragment_user_rv_bottom.xml" value="0.30103359173126615" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/fragment_user_rv_header.xml" value="0.2" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/lifecycle_exception.xml" value="0.2396593673965937" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/player_controller.xml" value="0.22" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/popupwindow_comment.xml" value="0.16" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/popupwindow_exit_app.xml" value="0.25" />
-        <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/popupwindow_record_status.xml" value="0.33" />
+        <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/popupwindow_record_status.xml" value="0.5" />
+        <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/layout/toast.xml" value="0.67" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml" value="0.4931640625" />
         <entry key="..\:/WorkSpace/Git_WorkSpace/efunboxReader-android/efunboxReader-android-master/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml" value="0.4699248120300752" />
       </map>

BIN
app/src/fragmentRecommend/drawable/main_left_tab_layout_character.png


BIN
app/src/fragmentRecommend/drawable/main_left_tab_layout_follow.png


BIN
app/src/fragmentRecommend/drawable/main_left_tab_layout_recommend.png


BIN
app/src/fragmentRecommend/drawable/main_tab_layout_myinfo.png


+ 1 - 1
app/src/fragmentRecommend/drawable/slidevideo_switch_track_selector.xml

@@ -4,7 +4,7 @@
         <shape>
             <size android:width="40dp" android:height="30dp" />
             <corners android:radius="20dp" />
-            <solid android:color="@color/yellow" />
+            <solid android:color="#22D000" />
         </shape>
     </item>
 

+ 1 - 1
app/src/fragmentRecommend/drawable/switch_thumb.xml

@@ -5,7 +5,7 @@
             <size android:width="30dp" android:height="30dp" />
             <corners android:radius="20dp" />
             <solid android:color="#ffffff" />
-            <stroke android:width="2dp" android:color="@color/yellow" />
+            <stroke android:width="2dp" android:color="#1BA500" />
         </shape>
     </item>
 

+ 2 - 1
app/src/fragmentRecommend/layout/fragment_main_recommend.xml

@@ -8,7 +8,8 @@
     <FrameLayout
             android:layout_width="1002dp"
             android:layout_height="700dp"
-            android:layout_gravity="center">
+            android:layout_gravity="center"
+            android:layout_marginTop="10dp">
 
         <ImageView
                 android:layout_width="972dp"

+ 1 - 1
app/src/fragmentRecommend/layout/slide_video_marqueen_item.xml

@@ -16,7 +16,7 @@
                 android:layout_height="match_parent"
                 android:text="123123123123"
                 android:textColor="@color/white"
-                android:textSize="25dp"></TextView>
+                android:textSize="22dp"></TextView>
     </FrameLayout>
 
 </FrameLayout>

BIN
app/src/fragmentUser/drawable/fragment_my_attention.png


BIN
app/src/fragmentUser/drawable/fragment_my_collection.png


BIN
app/src/fragmentUser/drawable/fragment_my_customer_service.png


BIN
app/src/fragmentUser/drawable/fragment_my_message_notification.png


+ 1 - 2
app/src/fragmentUser/layout/adapter_item_record_authority.xml

@@ -43,8 +43,7 @@
                         android:gravity="center|left"
                         android:text="火车的故事"
                         android:textColor="#373737"
-                        android:textSize="27dp"
-                        android:textStyle="bold"></TextView>
+                        android:textSize="27dp"></TextView>
 
                 <Space
                         android:layout_width="0dp"

+ 1 - 0
app/src/main/java/com/edufound/reader/activity/MainActivity.java

@@ -21,6 +21,7 @@ import com.edufound.reader.annotation.BindView;
 import com.edufound.reader.base.BaseActivity;
 import com.edufound.reader.base.BaseMvpActivity;
 import com.edufound.reader.contract.MainContract;
+import com.edufound.reader.cusview.CusToast;
 import com.edufound.reader.popwindow.PopWindowUtil;
 import com.edufound.reader.presenter.MainPresenter;
 import com.edufound.reader.receiver.BackPageReceiver;

+ 6 - 3
app/src/main/java/com/edufound/reader/activity/MyCollectionActivity.java

@@ -56,6 +56,7 @@ public class MyCollectionActivity extends BaseMvpActivity<MyCollectionPresenter>
     @Override
     protected void onStart() {
         super.onStart();
+        mPresenter.activityOnStart();
     }
 
     @Override
@@ -109,9 +110,11 @@ public class MyCollectionActivity extends BaseMvpActivity<MyCollectionPresenter>
         mPresenter.initRecyclerView(mRecyclerView);
     }
 
+
+    @RequiresApi(api = Build.VERSION_CODES.N)
     @Override
     protected void onResume() {
-        mPresenter.activityOnStart();
+        mPresenter.activityOnResume();
         super.onResume();
     }
 
@@ -119,8 +122,8 @@ public class MyCollectionActivity extends BaseMvpActivity<MyCollectionPresenter>
     protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
         switch (resultCode) {
             case MyCollectionModel.ACTIVITY_BACK_RESULT:
-                mPresenter.clearData();
-                mPresenter.getFavoritesData();
+//                mPresenter.clearData();
+//                mPresenter.getFavoritesData();
                 break;
         }
         super.onActivityResult(requestCode, resultCode, data);

+ 45 - 8
app/src/main/java/com/edufound/reader/activity/SafflowerActivity.java

@@ -1,6 +1,8 @@
 package com.edufound.reader.activity;
 
 import android.app.Activity;
+import android.os.Build;
+import android.view.View;
 import android.widget.FrameLayout;
 import android.widget.ImageView;
 import android.widget.LinearLayout;
@@ -18,12 +20,17 @@ import com.edufound.reader.presenter.SafflowerPresenter;
 import java.util.HashMap;
 
 import androidx.annotation.NonNull;
+import androidx.annotation.RequiresApi;
 import androidx.recyclerview.widget.RecyclerView;
 import io.reactivex.rxjava3.annotations.Nullable;
 
 public class SafflowerActivity extends BaseMvpActivity<SafflowerPresenter> implements SafflowerContract.View {
 
     Activity mActivity;
+
+    @BindView(id = R.id.activity_saffloer_mainlayout)
+    FrameLayout mMainFrame;
+
     @BindView(id = R.id.activity_saffloer_sign_layout)
     LinearLayout mSignLayout;
     @BindView(id = R.id.activity_saffloer_recyclerview)
@@ -31,30 +38,50 @@ public class SafflowerActivity extends BaseMvpActivity<SafflowerPresenter> imple
 
     @BindView(id = R.id.activity_saffloer_back)
     ImageView mBack;
-    @BindView(id = R.id.activity_saffloer_sign)
-    FrameLayout mSign;
-    @BindView(id = R.id.activity_saffloer_sign_day)
-    TextView mSignDay;
+    @BindView(id = R.id.activity_saffloer_follow)
+    TextView mSignDayFollow;
+
+    @BindView(id = R.id.activity_saffloer_flower_des)
+    ImageView mFlowerDes;
+
+
+    @BindView(id = R.id.activity_saffloer_window)
+    FrameLayout mWindowFrame;
+
+    @BindView(id = R.id.activity_saffloer_window_back)
+    ImageView mWindowBack;
+
+    @BindView(id = R.id.activity_saffloer_window_item_layout)
+    LinearLayout mWindowItemLayout;
 
     @Override
     public int getLayoutId() {
         return R.layout.activity_saffloer;
     }
 
+    @RequiresApi(api = Build.VERSION_CODES.N)
     @Override
     public void initView() {
         mActivity = this;
         mPresenter = new SafflowerPresenter();
         mPresenter.attachView(this);
+        mMainFrame.setVisibility(View.VISIBLE);
+        mWindowFrame.setVisibility(View.INVISIBLE);
         addUiClickListener(mBack, o -> {
             mActivity.finish();
         });
-        addUiClickListener(mSign, o -> {
-//            Toast.makeText(mActivity, "点击签到", Toast.LENGTH_SHORT).show();
-            mPresenter.loginSign();
+        addUiClickListener(mFlowerDes, o -> {
+            mPresenter.initWindowItem(mWindowItemLayout);
+            showWindow();
+        });
+
+        addUiClickListener(mWindowBack, o -> {
+            mMainFrame.setVisibility(View.VISIBLE);
+            mWindowFrame.setVisibility(View.INVISIBLE);
         });
         mPresenter.getTaskData();
         mPresenter.getSignInfo();
+        mPresenter.getDayFlower();
     }
 
     @Override
@@ -101,7 +128,17 @@ public class SafflowerActivity extends BaseMvpActivity<SafflowerPresenter> imple
     @Override
     public void getSignInfoSuccess(String signDday) {
         mPresenter.initSignLayout(mSignLayout);
-        mSignDay.setText("已签到" + signDday + "天");
+    }
+
+    @Override
+    public void showWindow() {
+        mMainFrame.setVisibility(View.INVISIBLE);
+        mWindowFrame.setVisibility(View.VISIBLE);
+    }
+
+    @Override
+    public void getDayFlowerSuccess(String count) {
+        mSignDayFollow.setText("小红花 " + count);
     }
 
     @Override

+ 10 - 0
app/src/main/java/com/edufound/reader/apiserver/UserApiServerImpl.java

@@ -91,6 +91,11 @@ public class UserApiServerImpl implements userApiServer {
     public void getBindWeChatPath(Activity activity, Callback callback) {
         OkHttpClient.doGetAsync(activity, new HttpInfo.Builder().setUrl(API + "/user/bindWxQrCode"), callback);
     }
+
+    @Override
+    public void getSignInfo(Activity activity, Callback callback) {
+        OkHttpClient.doGetAsync(activity, HttpInfo.Builder().setUrl(API + "/loginLog/signIn"), callback);
+    }
 }
 
 
@@ -141,4 +146,9 @@ interface userApiServer {
 
     void getBindWeChatPath(Activity activity, Callback callback);
 
+    /**
+     * 签到
+     */
+    void getSignInfo(Activity activity, Callback callback);
+
 }

+ 127 - 59
app/src/main/java/com/edufound/reader/base/BaseActivity.java

@@ -12,6 +12,8 @@ import android.content.Intent;
 import android.content.IntentFilter;
 import android.os.Build;
 import android.os.Bundle;
+import android.os.Handler;
+import android.os.Message;
 import android.util.DisplayMetrics;
 import android.view.Gravity;
 import android.view.LayoutInflater;
@@ -22,7 +24,6 @@ import android.view.WindowManager;
 import android.view.animation.LinearInterpolator;
 import android.widget.FrameLayout;
 import android.widget.ImageView;
-import android.widget.TextView;
 import android.widget.Toast;
 
 import com.alibaba.fastjson.JSONObject;
@@ -34,11 +35,12 @@ import com.edufound.reader.annotation.BindView;
 import com.edufound.reader.apiserver.UserApiServerImpl;
 import com.edufound.reader.application.EApplication;
 import com.edufound.reader.bean.BaiDuUserInfo;
-import com.edufound.reader.bean.ChannelCodeEnum;
 import com.edufound.reader.bean.HttpResultBean;
+import com.edufound.reader.bean.SignBean;
 import com.edufound.reader.bean.UserBean;
 import com.edufound.reader.botsdk.BotRegisterListener;
 import com.edufound.reader.botsdk.IBotIntentCallback;
+import com.edufound.reader.cusview.CusToast;
 import com.edufound.reader.receiver.HomeKeyEventReceiver;
 import com.edufound.reader.receiver.NetworkChangeReceiver;
 import com.edufound.reader.receiver.ShowFollowReceiver;
@@ -48,7 +50,6 @@ import com.edufound.reader.util.EfunboxUtil;
 import com.edufound.reader.util.LiuHaiScreenUtil;
 import com.edufound.reader.util.MMKVEncodeKey;
 import com.edufound.reader.util.MMKVUtil;
-import com.edufound.reader.util.PermissionsUtil;
 import com.edufound.reader.util.SizeUtils;
 import com.google.gson.Gson;
 import com.google.gson.reflect.TypeToken;
@@ -74,6 +75,8 @@ import io.reactivex.rxjava3.functions.Consumer;
 
 public abstract class BaseActivity extends AppCompatActivity {
 
+    private static final int SHOW_FOLLOW = 0x5512;
+    private static final int SHOW_FIRST_TIP = 0x5513;
     public CompositeDisposable mCompositeDisposable;
     //按home键的receiver
     HomeKeyEventReceiver mHomeReceiver;
@@ -261,68 +264,117 @@ public abstract class BaseActivity extends AppCompatActivity {
 
 
     public void showFollowCountAnim(String count) {
-        View mFollowView = LayoutInflater.from(this).inflate(R.layout.anim_getfollow, null);
-        FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
-        ((TextView) mFollowView.findViewById(R.id.anim_getfollow_followcount)).setText("+" + count);
-        params.gravity = Gravity.CENTER;
-        mFollowView.setLayoutParams(params);
-        ObjectAnimator mRotationImgAnim = ObjectAnimator.ofFloat(mFollowView, "translationY", 0, -150);
-        mRotationImgAnim.setDuration(1500);
-        LinearInterpolator interpolator = new LinearInterpolator();
-        mRotationImgAnim.setInterpolator(interpolator); //设置匀速旋转,不卡顿 icon_anim.start();
-        ObjectAnimator alphaAnim = ObjectAnimator.ofFloat(mFollowView, "alpha", 1f, 0f);
-        alphaAnim.setDuration(1500);
-        getRootView().addView(mFollowView);
-        AnimatorSet animatorSet = new AnimatorSet();
-        animatorSet.play(mRotationImgAnim).with(alphaAnim);
-        animatorSet.addListener(new AnimatorListenerAdapter() {
-            @Override
-            public void onAnimationEnd(Animator animation) {
-                super.onAnimationEnd(animation);
-                getRootView().removeView(mFollowView);
-            }
-        });
-        animatorSet.start();
+//        View mFollowView = LayoutInflater.from(this).inflate(R.layout.anim_getfollow, null);
+//        FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
+//        ((TextView) mFollowView.findViewById(R.id.anim_getfollow_followcount)).setText("+" + count);
+//        params.gravity = Gravity.CENTER;
+//        mFollowView.setLayoutParams(params);
+//        ObjectAnimator mRotationImgAnim = ObjectAnimator.ofFloat(mFollowView, "translationY", 0, -150);
+//        mRotationImgAnim.setDuration(1500);
+//        LinearInterpolator interpolator = new LinearInterpolator();
+//        mRotationImgAnim.setInterpolator(interpolator); //设置匀速旋转,不卡顿 icon_anim.start();
+//        ObjectAnimator alphaAnim = ObjectAnimator.ofFloat(mFollowView, "alpha", 1f, 0f);
+//        alphaAnim.setDuration(1500);
+//        getRootView().addView(mFollowView);
+//        AnimatorSet animatorSet = new AnimatorSet();
+//        animatorSet.play(mRotationImgAnim).with(alphaAnim);
+//        animatorSet.addListener(new AnimatorListenerAdapter() {
+//            @Override
+//            public void onAnimationEnd(Animator animation) {
+//                super.onAnimationEnd(animation);
+//                getRootView().removeView(mFollowView);
+//            }
+//        });
+//        animatorSet.start();
 //
+        for (int i = 0; i < Integer.valueOf(count); i++) {
+            Message message = new Message();
+            message.what = SHOW_FOLLOW;
+            message.arg1 = i;
+            baseHandler.sendMessageDelayed(message, i * 250);
+        }
+
     }
 
 
-    public void showFirstTouchView() {
-        mFirstIntoView = LayoutInflater.from(this).inflate(R.layout.first_tip, null);
-        ImageView touch = mFirstIntoView.findViewById(R.id.first_touch);
-        FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
-        params.gravity = Gravity.RIGHT | Gravity.CENTER;
-        params.rightMargin = SizeUtils.dp2px(Consts.getmApplicAtion().getBaseContext(), 80);
-        mFirstIntoView.setLayoutParams(params);
-        ObjectAnimator translationYUp = ObjectAnimator.ofFloat(touch, "translationY", 80, -30);
-        ObjectAnimator translationYDown = ObjectAnimator.ofFloat(touch, "translationY", -30, 80);
-        translationYUp.setDuration(3000);
-        translationYDown.setDuration(3000);
-        LinearInterpolator interpolator = new LinearInterpolator();
-        translationYUp.setInterpolator(interpolator); //设置匀速旋转,不卡顿
-        translationYDown.setInterpolator(interpolator); //设置匀速旋转,不卡顿
-        getRootView().addView(mFirstIntoView);
-        AnimatorSet animatorSet = new AnimatorSet();
-        animatorSet.addListener(new AnimatorListenerAdapter() {
-            @Override
-            public void onAnimationEnd(Animator animation) {
-                super.onAnimationEnd(animation);
-                animatorSet.start();
+    Handler baseHandler = new Handler(new Handler.Callback() {
+        @Override
+        public boolean handleMessage(@NonNull Message message) {
+            switch (message.what) {
+                case SHOW_FOLLOW:
+                    ImageView imageView = new ImageView(getBaseContext());
+                    imageView.setImageResource(R.drawable.testhua);
+                    FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(SizeUtils.dp2px(Consts.getmApplicAtion().getBaseContext(), 50), SizeUtils.dp2px(Consts.getmApplicAtion().getBaseContext(), 50));
+                    params.gravity = Gravity.RIGHT | Gravity.CENTER;
+                    params.topMargin = SizeUtils.dp2px(Consts.getmApplicAtion().getBaseContext(), 80);
+                    if (Integer.valueOf(message.arg1) % 2 == 0) {
+                        //双数
+                        params.rightMargin = SizeUtils.dp2px(Consts.getmApplicAtion().getBaseContext(), 30);
+                    } else {
+                        params.rightMargin = SizeUtils.dp2px(Consts.getmApplicAtion().getBaseContext(), 70);
+                    }
 
+                    imageView.setLayoutParams(params);
+                    getRootView().addView(imageView);
+                    ObjectAnimator mRotationImgAnim = ObjectAnimator.ofFloat(imageView, "translationY", 0, -200);
+                    mRotationImgAnim.setDuration(1500);
+                    ObjectAnimator alphaAnim = ObjectAnimator.ofFloat(imageView, "alpha", 1f, 0f);
+                    alphaAnim.setDuration(1500);
+                    AnimatorSet animatorSet = new AnimatorSet();
+                    animatorSet.play(mRotationImgAnim).with(alphaAnim);
+                    animatorSet.addListener(new AnimatorListenerAdapter() {
+                        @Override
+                        public void onAnimationEnd(Animator animation) {
+                            super.onAnimationEnd(animation);
+                            getRootView().removeView(imageView);
+                        }
+                    });
+                    animatorSet.start();
+                    break;
+                case SHOW_FIRST_TIP:
+                    mFirstIntoView = LayoutInflater.from(getBaseContext()).inflate(R.layout.first_tip, null);
+                    ImageView touch = mFirstIntoView.findViewById(R.id.first_touch);
+                    FrameLayout.LayoutParams first_params = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
+                    first_params.gravity = Gravity.RIGHT | Gravity.CENTER;
+                    first_params.rightMargin = SizeUtils.dp2px(Consts.getmApplicAtion().getBaseContext(), 80);
+                    mFirstIntoView.setLayoutParams(first_params);
+                    ObjectAnimator translationYUp = ObjectAnimator.ofFloat(touch, "translationY", 80, -30);
+                    ObjectAnimator translationYDown = ObjectAnimator.ofFloat(touch, "translationY", -30, 80);
+                    translationYUp.setDuration(3000);
+                    translationYDown.setDuration(3000);
+                    LinearInterpolator interpolator = new LinearInterpolator();
+                    translationYUp.setInterpolator(interpolator); //设置匀速旋转,不卡顿
+                    translationYDown.setInterpolator(interpolator); //设置匀速旋转,不卡顿
+                    getRootView().addView(mFirstIntoView);
+                    AnimatorSet first_animatorSet = new AnimatorSet();
+                    first_animatorSet.addListener(new AnimatorListenerAdapter() {
+                        @Override
+                        public void onAnimationEnd(Animator animation) {
+                            super.onAnimationEnd(animation);
+                            first_animatorSet.start();
+
+                        }
+                    });
+                    mFirstIntoView.setOnTouchListener(new View.OnTouchListener() {
+                        @Override
+                        public boolean onTouch(View view, MotionEvent motionEvent) {
+                            first_animatorSet.pause();
+                            removeFirstTipView();
+                            return true;
+                        }
+                    });
+                    first_animatorSet.playSequentially(translationYUp, translationYDown);
+                    first_animatorSet.start();
+                    MMKVUtil.getInstance().encode("first_into", false);
+                    break;
             }
-        });
-        mFirstIntoView.setOnTouchListener(new View.OnTouchListener() {
-            @Override
-            public boolean onTouch(View view, MotionEvent motionEvent) {
-                animatorSet.pause();
-                removeFirstTipView();
-                return true;
-            }
-        });
-        animatorSet.playSequentially(translationYUp, translationYDown);
-        animatorSet.start();
-        MMKVUtil.getInstance().encode("first_into", false);
-       
+            return false;
+        }
+    });
+
+    public void showFirstTouchView() {
+        baseHandler.sendEmptyMessage(SHOW_FIRST_TIP);
+
     }
 
 
@@ -477,6 +529,22 @@ public abstract class BaseActivity extends AppCompatActivity {
                                         Consts.setmConstsUserBean(bean.getData());
                                         Logger.e("看看到底对没有:" + mGson.toJson(Consts.getmConstsUserBean()));
                                         refUserInfo(Consts.getmConstsUserBean());
+                                        userApiServer.loginSign(topActivity, new Callback() {
+                                            @Override
+                                            public void onSuccess(HttpInfo info) throws IOException {
+                                                Logger.e("info:" + info.getRetDetail());
+                                                HttpResultBean<SignBean> bean = info.getRetDetail(new TypeToken<HttpResultBean<SignBean>>() {
+                                                }.getType());
+                                                if (bean.getData().getIsSign()) {
+                                                    CusToast.getInstance(topActivity).show("恭喜签到成功\n奖励" + bean.getData().getCount() + "朵小红花", 2000);
+                                                }
+                                            }
+
+                                            @Override
+                                            public void onFailure(HttpInfo info) throws IOException {
+
+                                            }
+                                        });
                                     }
 
                                     @Override

+ 19 - 1
app/src/main/java/com/edufound/reader/base/BaseFragment.java

@@ -20,9 +20,11 @@ import com.edufound.reader.application.EApplication;
 import com.edufound.reader.bean.BaiDuUserInfo;
 import com.edufound.reader.bean.ChannelCodeEnum;
 import com.edufound.reader.bean.HttpResultBean;
+import com.edufound.reader.bean.SignBean;
 import com.edufound.reader.bean.UserBean;
 import com.edufound.reader.botsdk.BotRegisterListener;
 import com.edufound.reader.botsdk.IBotIntentCallback;
+import com.edufound.reader.cusview.CusToast;
 import com.edufound.reader.receiver.NetworkChangeReceiver;
 import com.edufound.reader.util.Consts;
 import com.edufound.reader.util.DeviceUuidFactory;
@@ -161,7 +163,7 @@ public abstract class BaseFragment extends Fragment {
     };
 
     protected void refUserInfo(UserBean bean) {
-        
+
     }
 
     //百度的回调逻辑代码块
@@ -261,6 +263,22 @@ public abstract class BaseFragment extends Fragment {
                                         Consts.setmConstsUserBean(bean.getData());
                                         Logger.e("看看到底对没有:" + mGson.toJson(Consts.getmConstsUserBean()));
                                         refUserInfo(Consts.getmConstsUserBean());
+                                        userApiServer.loginSign(topActivity, new Callback() {
+                                            @Override
+                                            public void onSuccess(HttpInfo info) throws IOException {
+                                                Logger.e("info:" + info.getRetDetail());
+                                                HttpResultBean<SignBean> bean = info.getRetDetail(new TypeToken<HttpResultBean<SignBean>>() {
+                                                }.getType());
+                                                if (bean.getData().getIsSign()) {
+                                                    CusToast.getInstance(topActivity).show("恭喜签到成功\n奖励" + bean.getData().getCount() + "朵小红花", 2000);
+                                                }
+                                            }
+
+                                            @Override
+                                            public void onFailure(HttpInfo info) throws IOException {
+
+                                            }
+                                        });
                                     }
 
                                     @Override

+ 95 - 0
app/src/main/java/com/edufound/reader/bean/SignBean.java

@@ -0,0 +1,95 @@
+package com.edufound.reader.bean;
+
+public class SignBean {
+
+    private String channel;
+    private int continuousDay;
+    private int count;
+    private String currentTime;
+    private String gmtCreated;
+    private String gmtModified;
+    private long id;
+    private boolean isSign;
+    private String loginDay;
+    private String uid;
+
+    public void setChannel(String channel) {
+        this.channel = channel;
+    }
+
+    public String getChannel() {
+        return channel;
+    }
+
+    public void setContinuousDay(int continuousDay) {
+        this.continuousDay = continuousDay;
+    }
+
+    public int getContinuousDay() {
+        return continuousDay;
+    }
+
+    public void setCount(int count) {
+        this.count = count;
+    }
+
+    public int getCount() {
+        return count;
+    }
+
+    public void setCurrentTime(String currentTime) {
+        this.currentTime = currentTime;
+    }
+
+    public String getCurrentTime() {
+        return currentTime;
+    }
+
+    public void setGmtCreated(String gmtCreated) {
+        this.gmtCreated = gmtCreated;
+    }
+
+    public String getGmtCreated() {
+        return gmtCreated;
+    }
+
+    public void setGmtModified(String gmtModified) {
+        this.gmtModified = gmtModified;
+    }
+
+    public String getGmtModified() {
+        return gmtModified;
+    }
+
+    public void setId(long id) {
+        this.id = id;
+    }
+
+    public long getId() {
+        return id;
+    }
+
+    public void setIsSign(boolean isSign) {
+        this.isSign = isSign;
+    }
+
+    public boolean getIsSign() {
+        return isSign;
+    }
+
+    public void setLoginDay(String loginDay) {
+        this.loginDay = loginDay;
+    }
+
+    public String getLoginDay() {
+        return loginDay;
+    }
+
+    public void setUid(String uid) {
+        this.uid = uid;
+    }
+
+    public String getUid() {
+        return uid;
+    }
+}

+ 5 - 0
app/src/main/java/com/edufound/reader/contract/MainContract.java

@@ -4,6 +4,8 @@ import android.app.Activity;
 import android.widget.RadioGroup;
 
 import com.edufound.reader.base.BaseView;
+import com.edufound.reader.util.OkHttpClient;
+import com.okhttplib.HttpInfo;
 import com.okhttplib.callback.Callback;
 
 import org.json.JSONObject;
@@ -12,12 +14,15 @@ import io.reactivex.rxjava3.core.Observable;
 
 public interface MainContract {
     interface Model {
+
+
     }
 
     interface View extends BaseView {
 
         void setCheckIndex();
 
+
     }
 
     interface Presenter {

+ 2 - 0
app/src/main/java/com/edufound/reader/contract/MyCollectionContract.java

@@ -30,5 +30,7 @@ public interface MyCollectionContract {
 
         void clearData();
 
+        void activityOnResume();
+
     }
 }

+ 11 - 0
app/src/main/java/com/edufound/reader/contract/SafflowerContract.java

@@ -14,12 +14,18 @@ public interface SafflowerContract {
         void getTask(Activity activity, HttpInfo.Builder into, Callback callback);
 
         void getSignInfo(Activity activity, Callback callback);
+
+        void getDayFlower(Activity activity, Callback callback);
     }
 
     interface View extends BaseView {
         void getTaskSuccess();
 
         void getSignInfoSuccess(String signDay);
+
+        void showWindow();
+
+        void getDayFlowerSuccess(String count);
     }
 
     interface Presenter {
@@ -34,5 +40,10 @@ public interface SafflowerContract {
         void loginSign();
 
         void activityDestory();
+
+
+        void initWindowItem(LinearLayout layout);
+
+        void getDayFlower();
     }
 }

+ 114 - 0
app/src/main/java/com/edufound/reader/cusview/CusToast.java

@@ -0,0 +1,114 @@
+package com.edufound.reader.cusview;
+
+import android.content.Context;
+import android.os.Build;
+import android.os.CountDownTimer;
+import android.os.Handler;
+import android.view.Gravity;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.widget.TextView;
+import android.widget.Toast;
+
+import com.edufound.reader.R;
+import com.edufound.reader.util.SizeUtils;
+
+import androidx.annotation.RequiresApi;
+
+public class CusToast extends Toast {
+    private boolean canceled = true;
+    private Handler handler;
+    private Toast toast;
+    private TimeCount time;
+    private TextView toast_content;
+
+    private static CusToast instance;
+
+    public CusToast(Context context) {
+        this(context, new Handler());
+    }
+
+
+    public static CusToast getInstance(Context context) {
+        if (instance == null) {
+            instance = new CusToast(context);
+        }
+
+        return instance;
+    }
+
+
+    @RequiresApi(api = Build.VERSION_CODES.P)
+    public CusToast(Context context, Handler handler) {
+        super(context);
+        this.handler = handler;
+        View layout = LayoutInflater.from(context).inflate(R.layout.toast, null, false);
+        toast_content = (TextView) layout.findViewById(R.id.tvToast);
+        if (toast == null) {
+            toast = new Toast(context);
+        }
+        toast.setGravity(Gravity.CENTER, 0, 0);
+        toast.setDuration(Toast.LENGTH_LONG);
+        toast.setView(layout);
+    }
+
+
+    /**
+     * @param text     要显示的内容
+     * @param duration 显示的时间长
+     *                 根据LENGTH_MAX进行判断
+     *                 如果不匹配,进行系统显示
+     *                 如果匹配,永久显示,直到调用hide()
+     */
+    public void show(String text, int duration) {
+        time = new TimeCount(duration, 1000);//1000是消失渐变时间
+        toast_content.setText(text);
+        if (canceled) {
+            time.start();
+            canceled = false;
+            showUntilCancel();
+        }
+    }
+
+    /**
+     * 隐藏Toast
+     */
+    public void hide() {
+        if (toast != null) {
+            toast.cancel();
+        }
+        canceled = true;
+    }
+
+    private void showUntilCancel() {
+        if (canceled) {
+            return;
+        }
+        toast.show();
+        handler.postDelayed(new Runnable() {
+            public void run() {
+                showUntilCancel();
+            }
+        }, 3000);
+    }
+
+
+    /**
+     * 计时器
+     */
+    class TimeCount extends CountDownTimer {
+        public TimeCount(long millisInFuture, long countDownInterval) {
+            super(millisInFuture, countDownInterval); // 总时长,计时的时间间隔
+        }
+
+        @Override
+        public void onFinish() { // 计时完毕时触发
+            hide();
+        }
+
+        @Override
+        public void onTick(long millisUntilFinished) { // 计时过程显示
+        }
+
+    }
+}

+ 4 - 3
app/src/main/java/com/edufound/reader/cusview/RvListJzvdStd.java

@@ -33,6 +33,7 @@ import com.edufound.reader.bean.ChannelCodeEnum;
 import com.edufound.reader.botsdk.BotRegisterListener;
 import com.edufound.reader.util.Consts;
 import com.edufound.reader.util.OkHttpClient;
+import com.edufound.reader.util.SizeUtils;
 import com.okhttplib.HttpInfo;
 import com.okhttplib.callback.Callback;
 import com.orhanobut.logger.Logger;
@@ -495,7 +496,7 @@ public class RvListJzvdStd extends Jzvd {
         fullscreenButton.setImageResource(R.drawable.jz_enlarge);
         backButton.setVisibility(View.GONE);
         tinyBackImageView.setVisibility(View.INVISIBLE);
-        changeStartButtonSize(120);
+        changeStartButtonSize(SizeUtils.dp2px(getContext(), 80));
         batteryTimeLayout.setVisibility(View.GONE);
         clarity.setVisibility(View.GONE);
     }
@@ -514,7 +515,7 @@ public class RvListJzvdStd extends Jzvd {
             clarity.setText(jzDataSource.getCurrentKey().toString());
             clarity.setVisibility(View.VISIBLE);
         }
-        changeStartButtonSize(120);
+        changeStartButtonSize(SizeUtils.dp2px(getContext(), 80));
         setSystemTimeAndBattery();
     }
 
@@ -1034,7 +1035,7 @@ public class RvListJzvdStd extends Jzvd {
             @Override
             public void onSuccess(HttpInfo info) throws IOException {
                 //播放记录
-                if(Consts.getUmengChannel().equals(ChannelCodeEnum.BAIDU.getChannelCode())){
+                if (Consts.getUmengChannel().equals(ChannelCodeEnum.BAIDU.getChannelCode())) {
                     BotRegisterListener.uploadUsage("0", readid, "video", "unpurchased");
                 }
             }

+ 1 - 1
app/src/main/java/com/edufound/reader/fragment/MyTabFragment.java

@@ -67,7 +67,7 @@ public class MyTabFragment extends BaseMvpFragment<MyTabFragmentPresenter> imple
     FrameLayout mHeadUserMessage;
     ImageView mHeadUserCustomerService;
     TextView mRecordSize;
-    ImageView mUnReadIcon;
+    FrameLayout mUnReadIcon;
     TextView mFlowerCount;
     TextView mOverDate;
     Space mBottomView;

+ 6 - 3
app/src/main/java/com/edufound/reader/model/MainModel.java

@@ -1,9 +1,12 @@
 package com.edufound.reader.model;
 
+import android.app.Activity;
+
 import com.edufound.reader.contract.MainContract;
+import com.edufound.reader.util.Consts;
+import com.edufound.reader.util.OkHttpClient;
+import com.okhttplib.HttpInfo;
+import com.okhttplib.callback.Callback;
 
 public class MainModel implements MainContract.Model {
-
-
-
 }

+ 5 - 0
app/src/main/java/com/edufound/reader/model/SafflowerModel.java

@@ -21,4 +21,9 @@ public class SafflowerModel implements SafflowerContract.Model {
     public void getSignInfo(Activity activity, Callback callback) {
         OkHttpClient.doGetAsync(activity, HttpInfo.Builder().setUrl(API + "/loginLog/signIn"), callback);
     }
+
+    @Override
+    public void getDayFlower(Activity activity, Callback callback) {
+        OkHttpClient.doGetAsync(activity, HttpInfo.Builder().setUrl(API + "/userReadRecord"), callback);
+    }
 }

+ 2 - 0
app/src/main/java/com/edufound/reader/popwindow/PopWindowUtil.java

@@ -292,6 +292,8 @@ public class PopWindowUtil {
     }
 
 
+
+
     private static void setClickListener(View view, Consumer onNext) {
         RxView.clicks(view).throttleFirst(2, TimeUnit.SECONDS).subscribe(onNext);
     }

+ 19 - 1
app/src/main/java/com/edufound/reader/presenter/MainPresenter.java

@@ -19,8 +19,10 @@ import com.edufound.reader.apiserver.UserApiServerImpl;
 import com.edufound.reader.base.BaseActivity;
 import com.edufound.reader.base.BasePresenter;
 import com.edufound.reader.bean.HttpResultBean;
+import com.edufound.reader.bean.SignBean;
 import com.edufound.reader.bean.UserBean;
 import com.edufound.reader.contract.MainContract;
+import com.edufound.reader.cusview.CusToast;
 import com.edufound.reader.fragment.CharacterFragment;
 import com.edufound.reader.fragment.MyTabFragment;
 import com.edufound.reader.fragment.RecommendFragment;
@@ -175,7 +177,6 @@ public class MainPresenter extends BasePresenter<MainContract.View> implements M
                 }.getType());
                 if (bean.getCode().equals("300")) {
                     //没有用户数据
-
                     if (TextUtils.isEmpty(MMKVUtil.getInstance().decodeString(MMKVEncodeKey.USER_GRADE))) {
                         //没有选择过年纪,选择年纪
                         showSelectGradeWindow();
@@ -189,6 +190,22 @@ public class MainPresenter extends BasePresenter<MainContract.View> implements M
                     //用户是否登录,登录了,创建Consts的userbean
                     Consts.setmConstsUserBean(bean.getData());
                     mView.setCheckIndex();
+                    mUserApi.loginSign(mView.getActivity(), new Callback() {
+                        @Override
+                        public void onSuccess(HttpInfo info) throws IOException {
+                            Logger.e("info:" + info.getRetDetail());
+                            HttpResultBean<SignBean> bean = info.getRetDetail(new TypeToken<HttpResultBean<SignBean>>() {
+                            }.getType());
+                            if (bean.getData().getIsSign()) {
+                                CusToast.getInstance(mView.getActivity()).show("恭喜签到成功\n奖励" + bean.getData().getCount() + "朵小红花", 2000);
+                            }
+                        }
+
+                        @Override
+                        public void onFailure(HttpInfo info) throws IOException {
+
+                        }
+                    });
                 }
             }
 
@@ -205,6 +222,7 @@ public class MainPresenter extends BasePresenter<MainContract.View> implements M
         });
     }
 
+
     @Override
     public void registerMobile(String mobileNo) {
         if (EfunboxUtil.isMobileNO(mobileNo)) {

+ 49 - 33
app/src/main/java/com/edufound/reader/presenter/MyCollectionPresenter.java

@@ -5,25 +5,21 @@ import android.content.Context;
 import android.content.Intent;
 import android.content.IntentFilter;
 import android.graphics.Rect;
+import android.os.Build;
 import android.os.Bundle;
 import android.view.View;
-import android.widget.Toast;
 
-import com.edufound.reader.activity.OthersRecordActivity;
 import com.edufound.reader.activity.SmallFullVideoActivity;
 import com.edufound.reader.adapter.MyCollectionItemAdapter;
 import com.edufound.reader.base.BaseActivity;
 import com.edufound.reader.base.BasePresenter;
-import com.edufound.reader.bean.CommentListReplyBean;
 import com.edufound.reader.bean.HttpResultBean;
 import com.edufound.reader.bean.HttpResultDataListBean;
 import com.edufound.reader.bean.UserRecordBean;
 import com.edufound.reader.contract.MyCollectionContract;
 import com.edufound.reader.listener.RecyclerItemClickListener;
 import com.edufound.reader.model.MyCollectionModel;
-import com.edufound.reader.model.MyFollowModel;
 import com.edufound.reader.receiver.BackPageReceiver;
-import com.edufound.reader.util.Consts;
 import com.edufound.reader.util.MMKVUtil;
 import com.edufound.reader.util.SizeUtils;
 import com.google.gson.reflect.TypeToken;
@@ -32,9 +28,11 @@ import com.okhttplib.callback.Callback;
 import com.orhanobut.logger.Logger;
 
 import java.io.IOException;
-import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
 
+import androidx.annotation.RequiresApi;
 import androidx.recyclerview.widget.GridLayoutManager;
 import androidx.recyclerview.widget.LinearLayoutManager;
 import androidx.recyclerview.widget.RecyclerView;
@@ -48,10 +46,13 @@ public class MyCollectionPresenter extends BasePresenter<MyCollectionContract.Vi
     int mPageIndex = 1;
     boolean loadOver = false;
     boolean rvAdditemDecoration = false;
+    //需要删除的position
+
+    Map<String, Integer> mRemovMap;
 
     public MyCollectionPresenter() {
+        mRemovMap = new HashMap<>();
         mModel = new MyCollectionModel();
-        Consts.setIsNeedRemoveBR(true);
 
     }
 
@@ -147,17 +148,41 @@ public class MyCollectionPresenter extends BasePresenter<MyCollectionContract.Vi
 
     @Override
     public void activityDestory() {
-        Consts.setIsNeedRemoveBR(false);
-        mView.getActivity().unregisterReceiver(receiver);
+        mView.getActivity().unregisterReceiver(collectionReceiver);
     }
 
     @Override
     public void activityOnStart() {
         Logger.e("注册广播");
-        IntentFilter intentFilter = new IntentFilter(BackPageReceiver.BACK_HOME_REMOVE_VIDEO_ITEM);
-        mView.getActivity().registerReceiver(receiver, intentFilter);
+        IntentFilter intentFilter = new IntentFilter();
+        intentFilter.addAction(BackPageReceiver.BACK_HOME_REMOVE_VIDEO_ITEM);
+        intentFilter.addAction(BackPageReceiver.BACK_HOME_ADD_VIDEO_ITEM);
+        mView.getActivity().registerReceiver(collectionReceiver, intentFilter);
+//        IntentFilter intentFilter = new IntentFilter(BackPageReceiver.BACK_HOME_REMOVE_VIDEO_ITEM);
+//        mView.getActivity().registerReceiver(receiver, intentFilter);
+
     }
 
+
+    BroadcastReceiver collectionReceiver = new BroadcastReceiver() {
+        @Override
+        public void onReceive(Context context, Intent intent) {
+            if (intent.getAction().equals(BackPageReceiver.BACK_HOME_REMOVE_VIDEO_ITEM)) {
+                //删除item
+                int position = Integer.valueOf(intent.getStringExtra("position"));
+                Logger.e("删除item:" + position + ",添加到map里");
+                mRemovMap.put("del" + position, position);
+            } else if (intent.getAction().equals(BackPageReceiver.BACK_HOME_ADD_VIDEO_ITEM)) {
+                //添加item
+                int position = Integer.valueOf(intent.getStringExtra("position"));
+                Logger.e("添加item:" + position + ",从需要遍历的map里删除");
+                if (mRemovMap.get("del" + position) != null) {
+                    mRemovMap.remove("del" + position);
+                }
+            }
+        }
+    };
+
     @Override
     public void clearData() {
         mDataList = null;
@@ -167,6 +192,19 @@ public class MyCollectionPresenter extends BasePresenter<MyCollectionContract.Vi
         loadOver = false;
     }
 
+    @RequiresApi(api = Build.VERSION_CODES.N)
+    @Override
+    public void activityOnResume() {
+        if (mRemovMap != null && mRemovMap.size() > 0) {
+            mRemovMap.forEach((key, value) -> {
+                if (myCollectionItemAdapter != null) {
+                    myCollectionItemAdapter.removeByPosition(value);
+                }
+            });
+            mRemovMap = new HashMap<>();
+        }
+    }
+
 
     public void addMoreData(RecyclerView rv) {
         //获取当前显示的View 的数据
@@ -187,28 +225,6 @@ public class MyCollectionPresenter extends BasePresenter<MyCollectionContract.Vi
     }
 
 
-    BroadcastReceiver receiver = new BroadcastReceiver() {
-        @Override
-        public void onReceive(Context context, Intent intent) {
-//            if (intent.getAction().equals(BackPageReceiver.BACK_HOME_REMOVE_VIDEO_ITEM)) {
-//                //删除item
-//                int position = Integer.valueOf(intent.getStringExtra("removePosition"));
-//                Logger.e("position:" + position);
-//                myCollectionItemAdapter.removeByPosition(position);
-//                if (mTotalSize > 0) {
-//                    mTotalSize--;
-//                }
-//            } else if (intent.getAction().equals(BackPageReceiver.BACK_HOME_ADD_VIDEO_ITEM)) {
-//                int position = Integer.valueOf(intent.getStringExtra("addPosition"));
-//                Logger.e("position:" + position);
-////                myCollectionItemAdapter.removeByPosition(position);
-////                if (mTotalSize > 0) {
-////                    mTotalSize--;
-////                }
-//            }
-        }
-    };
-
 }
 
 class MyCollectionItemDecoration extends RecyclerView.ItemDecoration {

+ 6 - 11
app/src/main/java/com/edufound/reader/presenter/RecommendFragmentPresenter.java

@@ -273,26 +273,20 @@ public class RecommendFragmentPresenter extends BasePresenter<RecommendFragmentC
             public void onSuccess(HttpInfo info) throws IOException {
                 HttpResultBean<FavoritesBean> bean = info.getRetDetail(new TypeToken<HttpResultBean<FavoritesBean>>() {
                 }.getType());
-
+                Intent intent = new Intent();
                 if (bean.getData().getStatus().equals("DEL")) {
                     mDataList.get(mCurrentPosition).setFavorites(false);
                     mDataList.get(mCurrentPosition).setFavoritesBean(null);
-                    if (Consts.isIsNeedRemoveBR()) {
-                        Intent intent = new Intent(BackPageReceiver.BACK_HOME_REMOVE_VIDEO_ITEM);
-                        intent.putExtra("removePosition", String.valueOf(mCurrentPosition));
-                        mContext.sendBroadcast(intent);
-                    }
                     mView.setFavorites(false);
+                    intent.setAction(BackPageReceiver.BACK_HOME_REMOVE_VIDEO_ITEM);
                 } else if (bean.getData().getStatus().equals("NORMAL")) {
                     mDataList.get(mCurrentPosition).setFavorites(true);
                     mDataList.get(mCurrentPosition).setFavoritesBean(null);
                     mView.setFavorites(true);
-                    if (Consts.isIsNeedRemoveBR()) {
-                        Intent intent = new Intent(BackPageReceiver.BACK_HOME_ADD_VIDEO_ITEM);
-                        intent.putExtra("addPosition", String.valueOf(mCurrentPosition));
-                        mContext.sendBroadcast(intent);
-                    }
+                    intent.setAction(BackPageReceiver.BACK_HOME_ADD_VIDEO_ITEM);
                 }
+                intent.putExtra("position", String.valueOf(mCurrentPosition));
+                mContext.sendBroadcast(intent);
             }
 
             @Override
@@ -440,6 +434,7 @@ public class RecommendFragmentPresenter extends BasePresenter<RecommendFragmentC
     }
 
     public void scrollToNextFunction(RecyclerView rv, boolean needScroll) {
+        Logger.e("needScroll:" + needScroll);
         //获取当前显示的View 的数据
         int childCount = rv.getChildCount();
         //获取最后一具 Item 对应的View

+ 54 - 0
app/src/main/java/com/edufound/reader/presenter/SafflowerPresenter.java

@@ -1,6 +1,8 @@
 package com.edufound.reader.presenter;
 
 import android.content.Intent;
+import android.os.Build;
+import android.os.Message;
 import android.view.Gravity;
 import android.view.LayoutInflater;
 import android.view.View;
@@ -30,7 +32,10 @@ import com.orhanobut.logger.Logger;
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.logging.Handler;
 
+import androidx.annotation.NonNull;
+import androidx.annotation.RequiresApi;
 import androidx.recyclerview.widget.GridLayoutManager;
 import androidx.recyclerview.widget.LinearLayoutManager;
 import androidx.recyclerview.widget.RecyclerView;
@@ -41,9 +46,11 @@ public class SafflowerPresenter extends BasePresenter<SafflowerContract.View> im
     List<SignInfoBean.SignInfoItemBean> mSignList;
     SafflowerItemAdapter mSafflowerItemAdapter;
     UserApiServerImpl userApi;
+    List<String> mDesList;
 
     public SafflowerPresenter() {
         mModel = new SafflowerModel();
+        mDesList = new ArrayList<>();
         mDataList = new ArrayList<>();
         userApi = new UserApiServerImpl();
 
@@ -88,6 +95,7 @@ public class SafflowerPresenter extends BasePresenter<SafflowerContract.View> im
                 SizeUtils.dp2px(mView.getActivity(), 20)));
         rv.setLayoutManager(gridLayoutManager);
         rv.setAdapter(mSafflowerItemAdapter);
+
     }
 
     @Override
@@ -109,6 +117,7 @@ public class SafflowerPresenter extends BasePresenter<SafflowerContract.View> im
                         }
                     });
                 }
+                safflowerHandler.sendEmptyMessage(1);
             }
 
             @Override
@@ -157,5 +166,50 @@ public class SafflowerPresenter extends BasePresenter<SafflowerContract.View> im
         mView.getActivity().sendBroadcast(intent);
     }
 
+    @RequiresApi(api = Build.VERSION_CODES.N)
+    @Override
+    public void initWindowItem(LinearLayout layout) {
+        LayoutInflater inflater = LayoutInflater.from(mView.getActivity());
+        if (mDesList.size() > 0) {
+            mDesList.forEach((item) -> {
+                LinearLayout itemlayout = (LinearLayout) inflater.inflate(R.layout.activity_saffloer_window_item, null);
+                ((TextView) itemlayout.findViewById(R.id.activity_saffloer_window_item_text)).setText(item);
+                layout.addView(itemlayout);
+            });
+        }
+
+    }
+
+    @Override
+    public void getDayFlower() {
+        mModel.getDayFlower(mView.getActivity(), new Callback() {
+            @Override
+            public void onSuccess(HttpInfo info) throws IOException {
+                HttpResultBean<String> num = info.getRetDetail(new TypeToken<HttpResultBean<String>>() {
+                }.getType());
+                mView.getDayFlowerSuccess(num.getData());
+            }
+
+            @Override
+            public void onFailure(HttpInfo info) throws IOException {
+
+            }
+        });
+    }
+
+    android.os.Handler safflowerHandler = new android.os.Handler(new android.os.Handler.Callback() {
+        @RequiresApi(api = Build.VERSION_CODES.N)
+        @Override
+        public boolean handleMessage(@NonNull Message message) {
+            switch (message.what) {
+                case 1:
 
+                    mDataList.forEach((item) -> {
+                        mDesList.add(item.getTask().getTitle() + "奖励" + item.getTask().getSort() + "朵小红花," + "每日" + item.getTask().getJoinAmount() + "次上限");
+                    });
+                    break;
+            }
+            return false;
+        }
+    });
 }

+ 0 - 9
app/src/main/java/com/edufound/reader/util/Consts.java

@@ -30,7 +30,6 @@ public class Consts {
 
     private static String UID = "";
 
-    private static boolean isNeedRemoveBR = false;
 
     private static String recordUpLoadFileUrl = "";
 
@@ -63,14 +62,6 @@ public class Consts {
         Consts.recordUpLoadFileUrl = recordUpLoadFileUrl;
     }
 
-    public static boolean isIsNeedRemoveBR() {
-        return isNeedRemoveBR;
-    }
-
-    public static void setIsNeedRemoveBR(boolean isNeedRemoveBR) {
-        Consts.isNeedRemoveBR = isNeedRemoveBR;
-    }
-
 
     public static String getUID() {
         return UID;

+ 2 - 2
app/src/main/res/drawable/activity_saffloer_sigin_layout_divier.xml

@@ -2,7 +2,7 @@
 <shape xmlns:android="http://schemas.android.com/apk/res/android"
         android:shape="rectangle">
     <size
-            android:width="49dp"
-            android:height="10dp" />
+            android:width="53dp"
+            android:height="1dp" />
     <solid android:color="#F55743" />
 </shape>

BIN
app/src/main/res/drawable/activity_saffloer_sign_layout_item_des_true.png


BIN
app/src/main/res/drawable/activity_safflower_bg.png


BIN
app/src/main/res/drawable/activity_safflower_des.png


BIN
app/src/main/res/drawable/activity_safflower_des_pop_bg.png


BIN
app/src/main/res/drawable/app_exit_icon.png


BIN
app/src/main/res/drawable/main_left_tab_layout_character.png


BIN
app/src/main/res/drawable/main_left_tab_layout_follow.png


BIN
app/src/main/res/drawable/main_left_tab_layout_recommend.png


BIN
app/src/main/res/drawable/main_tab_layout_myinfo.png


BIN
app/src/main/res/drawable/splash_bg.jpg


BIN
app/src/main/res/drawable/testhua.png


BIN
app/src/main/res/drawable/toast_bg.9.png


+ 3 - 4
app/src/main/res/layout/activity_customerservice.xml

@@ -63,8 +63,7 @@
                         android:layout_marginTop="11dp"
                         android:text="感谢使用 联系我们"
                         android:textColor="@color/white"
-                        android:textSize="36dp"
-                        android:textStyle="bold"></TextView>
+                        android:textSize="36dp"></TextView>
             </FrameLayout>
 
             <FrameLayout
@@ -91,10 +90,10 @@
                     android:layout_marginLeft="35dp"
                     android:layout_marginTop="130dp"
                     android:gravity="center"
+                    android:lineHeight="40dp"
                     android:text="客服沟通 | 问题反馈 | 产品吐槽\n有任何问题均可在线咨询哦"
                     android:textColor="#333333"
-                    android:textSize="32dp"
-                    android:textStyle="bold"></TextView>
+                    android:textSize="28dp"></TextView>
 
         </FrameLayout>
     </LinearLayout>

+ 22 - 21
app/src/main/res/layout/activity_main.xml

@@ -5,17 +5,11 @@
         android:layout_width="match_parent"
         android:layout_height="match_parent">
 
-
     <FrameLayout
             android:id="@+id/background"
             android:layout_width="match_parent"
             android:layout_height="match_parent"
-            android:background="@drawable/main_background"
-            app:layout_constraintBottom_toBottomOf="parent"
-            app:layout_constraintEnd_toEndOf="parent"
-            app:layout_constraintStart_toStartOf="parent"
-            app:layout_constraintTop_toTopOf="parent"></FrameLayout>
-
+            android:background="@drawable/main_background"></FrameLayout>
 
     <FrameLayout
             android:layout_width="1280dp"
@@ -36,20 +30,21 @@
                 app:layout_constraintStart_toStartOf="parent"
                 app:layout_constraintTop_toTopOf="parent">
 
-            <FrameLayout
+            <LinearLayout
                     android:layout_width="0dp"
                     android:layout_height="match_parent"
                     android:layout_gravity="left"
-                    android:layout_weight="1.5">
+                    android:layout_marginLeft="30dp"
+                    android:layout_weight="1.3"
+                    android:orientation="vertical">
 
 
                 <RadioGroup
                         android:id="@+id/main_left_tab_layout"
                         android:layout_width="wrap_content"
-                        android:layout_height="match_parent"
-                        android:layout_gravity="right"
-                        android:divider="@drawable/main_left_tab_divider"
-                        android:gravity="center"
+                        android:layout_height="wrap_content"
+                        android:layout_gravity="center"
+                        android:gravity="center|top"
                         android:orientation="vertical"
                         android:showDividers="middle">
 
@@ -82,7 +77,16 @@
                             android:button="@null"></RadioButton>
 
                 </RadioGroup>
-            </FrameLayout>
+
+                <ImageView
+                        android:id="@+id/activity_main_exitapp_icon"
+                        android:layout_width="80dp"
+                        android:layout_height="80dp"
+                        android:layout_gravity="bottom|center"
+                        android:layout_marginLeft="5dp"
+                        android:layout_marginTop="40dp"
+                        android:src="@drawable/app_exit_icon"></ImageView>
+            </LinearLayout>
 
 
             <FrameLayout
@@ -94,18 +98,15 @@
                         android:id="@+id/main_fragment_layout"
                         android:layout_width="match_parent"
                         android:layout_height="match_parent"
-                        android:layout_gravity="left"></FrameLayout>
+                        android:layout_gravity="left">
+
+
+                </FrameLayout>
 
             </FrameLayout>
         </LinearLayout>
 
 
-        <ImageView
-                android:id="@+id/activity_main_exitapp_icon"
-                android:layout_width="80dp"
-                android:layout_height="80dp"
-                android:layout_gravity="top|right"
-                android:src="@drawable/app_exit_icon"></ImageView>
     </FrameLayout>
 
 </androidx.constraintlayout.widget.ConstraintLayout>

+ 2 - 4
app/src/main/res/layout/activity_otherrecord.xml

@@ -153,8 +153,7 @@
                                         android:layout_gravity="bottom"
                                         android:layout_marginLeft="23dp"
                                         android:layout_marginRight="23dp"
-                                        android:alpha="0.36"
-                                        android:background="@color/black"></FrameLayout>
+                                        android:background="#EEEEEE"></FrameLayout>
                             </FrameLayout>
 
                             <FrameLayout
@@ -193,8 +192,7 @@
                                         android:layout_gravity="bottom"
                                         android:layout_marginLeft="23dp"
                                         android:layout_marginRight="23dp"
-                                        android:alpha="0.36"
-                                        android:background="@color/black"></FrameLayout>
+                                        android:background="#EEEEEE"></FrameLayout>
                             </FrameLayout>
 
                             <FrameLayout

+ 110 - 57
app/src/main/res/layout/activity_saffloer.xml

@@ -14,13 +14,16 @@
             app:layout_constraintBottom_toBottomOf="parent"
             app:layout_constraintEnd_toEndOf="parent"
             app:layout_constraintStart_toStartOf="parent"
+
             app:layout_constraintTop_toTopOf="parent"></FrameLayout>
 
 
     <FrameLayout
+            android:id="@+id/activity_saffloer_mainlayout"
             android:layout_width="1280dp"
             android:layout_height="720dp"
             android:orientation="vertical"
+            android:visibility="invisible"
             app:layout_constraintBottom_toBottomOf="parent"
             app:layout_constraintDimensionRatio="h,16:9"
             app:layout_constraintEnd_toEndOf="parent"
@@ -39,38 +42,44 @@
                     android:layout_height="0dp"
                     android:layout_weight="1.6">
 
-                <TextView
+                <FrameLayout
                         android:id="@+id/textView4"
                         android:layout_width="256dp"
-                        android:layout_height="46dp"
+                        android:layout_height="48dp"
                         android:layout_marginTop="44dp"
-                        android:layout_marginBottom="297dp"
+                        android:layout_marginBottom="250dp"
                         android:gravity="center"
-                        android:text="签到打卡得小红花"
-                        android:textColor="@color/white"
-                        android:textSize="32dp"
-                        android:textStyle="bold"
                         app:layout_constraintBottom_toBottomOf="parent"
                         app:layout_constraintEnd_toEndOf="parent"
                         app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"></TextView>
+                        app:layout_constraintTop_toTopOf="parent"
+                        app:layout_constraintVertical_bias="0.32">
+
+                    <com.edufound.reader.cusview.RoundFrameLayout
+                            android:layout_width="match_parent"
+                            android:layout_height="15dp"
+                            android:layout_gravity="bottom"
+                            android:background="#369F60"></com.edufound.reader.cusview.RoundFrameLayout>
+
+                    <LinearLayout
+                            android:layout_width="match_parent"
+                            android:layout_height="match_parent"
+                            android:layout_gravity="center"
+                            android:gravity="center"
+                            android:orientation="horizontal">
+
+                        <TextView
+                                android:id="@+id/activity_saffloer_follow"
+                                android:layout_width="wrap_content"
+                                android:layout_height="match_parent"
+                                android:text="小红花 0"
+                                android:textColor="@color/white"
+                                android:textSize="34dp"></TextView>
+                    </LinearLayout>
+
+
+                </FrameLayout>
 
-                <TextView
-                        android:id="@+id/activity_saffloer_sign_day"
-                        android:layout_width="200dp"
-                        android:layout_height="46dp"
-                        android:layout_marginTop="44dp"
-                        android:layout_marginBottom="297dp"
-                        android:gravity="center"
-                        android:text="已签到113天"
-                        android:textColor="@color/black"
-                        android:textSize="32dp"
-                        android:textStyle="bold"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintHorizontal_bias="0.78"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintTop_toTopOf="parent"></TextView>
 
                 <LinearLayout
                         android:id="@+id/activity_saffloer_sign_layout"
@@ -80,61 +89,36 @@
                         android:layout_marginTop="20dp"
                         android:layout_marginRight="100dp"
                         android:divider="@drawable/activity_saffloer_sigin_layout_divier"
-                        android:dividerPadding="67dp"
+                        android:dividerPadding="69dp"
                         android:orientation="horizontal"
                         android:showDividers="middle"
                         app:layout_constraintBottom_toBottomOf="parent"
                         app:layout_constraintEnd_toEndOf="parent"
                         app:layout_constraintStart_toStartOf="parent"
                         app:layout_constraintTop_toTopOf="parent"
-                        app:layout_constraintVertical_bias="0.44">
+                        app:layout_constraintVertical_bias="0.71000004">
 
                 </LinearLayout>
 
 
-                <FrameLayout
-                        android:id="@+id/activity_saffloer_sign"
-                        android:layout_width="283dp"
-                        android:layout_height="76dp"
-                        android:background="@drawable/activity_safflower_sigin_bg"
-                        app:layout_constraintBottom_toBottomOf="parent"
-                        app:layout_constraintEnd_toEndOf="parent"
-                        app:layout_constraintStart_toStartOf="parent"
-                        app:layout_constraintTop_toBottomOf="@+id/activity_saffloer_sign_layout">
-
-                    <TextView
-                            android:layout_width="match_parent"
-                            android:layout_height="match_parent"
-                            android:gravity="center"
-                            android:text="点击签到"
-                            android:textColor="@color/white"
-                            android:textSize="31dp"
-                            android:textStyle="bold"></TextView>
-                </FrameLayout>
             </androidx.constraintlayout.widget.ConstraintLayout>
 
+
             <LinearLayout
                     android:layout_width="match_parent"
                     android:layout_height="0dp"
                     android:layout_weight="1"
+                    android:gravity="center"
                     android:orientation="vertical">
 
-                <TextView
-                        android:layout_width="352dp"
-                        android:layout_height="39dp"
-                        android:layout_gravity="center"
-                        android:layout_marginTop="22dp"
-                        android:gravity="center"
-                        android:text="小小任务条,朗读好习惯"
-                        android:textColor="@color/black"
-                        android:textSize="32dp"
-                        android:textStyle="bold"></TextView>
 
                 <androidx.recyclerview.widget.RecyclerView
                         android:id="@+id/activity_saffloer_recyclerview"
                         android:layout_width="match_parent"
-                        android:layout_height="match_parent"
-                        android:paddingTop="20dp"></androidx.recyclerview.widget.RecyclerView>
+                        android:layout_height="135dp"
+                        android:layout_gravity="center"
+                        android:layout_marginLeft="13dp"
+                        android:layout_marginRight="14dp"></androidx.recyclerview.widget.RecyclerView>
             </LinearLayout>
         </LinearLayout>
 
@@ -147,6 +131,75 @@
                 android:layout_marginTop="20dp"
                 android:src="@drawable/main_back"></ImageView>
 
+        <ImageView
+                android:id="@+id/activity_saffloer_flower_des"
+                android:layout_width="154dp"
+                android:layout_height="94dp"
+                android:layout_gravity="right|top"
+                android:layout_marginTop="20dp"
+                android:layout_marginRight="55dp"
+                android:scaleX="1.5"
+                android:scaleY="1.5"
+                android:src="@drawable/activity_safflower_des"></ImageView>
+
     </FrameLayout>
 
+
+    <FrameLayout
+            android:id="@+id/activity_saffloer_window"
+            android:layout_width="1280dp"
+            android:layout_height="720dp"
+            android:orientation="vertical"
+            app:layout_constraintBottom_toBottomOf="parent"
+            app:layout_constraintDimensionRatio="h,16:9"
+            app:layout_constraintEnd_toEndOf="parent"
+            app:layout_constraintStart_toStartOf="parent"
+            app:layout_constraintTop_toTopOf="parent">
+
+
+        <FrameLayout
+                android:layout_width="890dp"
+                android:layout_height="510dp"
+                android:layout_gravity="center"
+                android:background="@drawable/activity_safflower_des_pop_bg">
+
+            <ScrollView
+                    android:layout_width="match_parent"
+                    android:layout_height="280dp"
+                    android:layout_gravity="center"
+                    android:layout_marginLeft="30dp"
+                    android:layout_marginTop="20dp"
+                    android:layout_marginRight="30dp">
+
+                <LinearLayout
+                        android:id="@+id/activity_saffloer_window_item_layout"
+                        android:layout_width="match_parent"
+                        android:layout_height="match_parent"
+                        android:layout_gravity="center|top"
+                        android:layout_marginLeft="50dp"
+                        android:layout_marginRight="50dp"
+                        android:divider="@drawable/main_left_tab_divider"
+                        android:gravity="center|top"
+                        android:orientation="vertical"
+                        android:showDividers="middle">
+
+
+                </LinearLayout>
+
+
+            </ScrollView>
+        </FrameLayout>
+
+
+        <ImageView
+                android:id="@+id/activity_saffloer_window_back"
+                android:layout_width="77dp"
+                android:layout_height="77dp"
+                android:layout_gravity="left|top"
+                android:layout_marginLeft="32dp"
+                android:layout_marginTop="20dp"
+                android:src="@drawable/main_back"></ImageView>
+
+
+    </FrameLayout>
 </androidx.constraintlayout.widget.ConstraintLayout>

+ 30 - 0
app/src/main/res/layout/activity_saffloer_window_item.xml

@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content">
+
+    <LinearLayout
+            android:id="@+id/activity_saffloer_window_item_layout_item"
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:layout_gravity="center"
+            android:gravity="center|left"
+            android:orientation="horizontal">
+
+        <ImageView
+                android:layout_width="28dp"
+                android:layout_height="27dp"
+                android:layout_gravity="center|top"
+                android:layout_marginTop="2dp"
+                android:src="@drawable/activity_saffloer_sign_layout_item_des_true"></ImageView>
+
+        <TextView
+                android:id="@+id/activity_saffloer_window_item_text"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:layout_marginLeft="18dp"
+                android:text="留下配音作品1篇奖励10朵小红花留下配音作品1篇奖励10朵小红花留下配音作品1篇奖励10朵小红花留下配音作品1篇奖励10朵小红花留下配音作品1篇奖励10朵小红花留下配音作品1篇奖励10朵小红花,每日5次上限"
+                android:textColor="#333333"
+                android:textSize="26dp"></TextView>
+    </LinearLayout>
+</LinearLayout>

+ 7 - 7
app/src/main/res/layout/activity_userinfo_setting.xml

@@ -134,7 +134,7 @@
                                             android:layout_height="50dp"
                                             android:text="昵称"
                                             android:textColor="@color/black"
-                                            android:textSize="36dp"></TextView>
+                                            android:textSize="30dp"></TextView>
 
                                     <FrameLayout
                                             android:layout_width="401dp"
@@ -155,7 +155,7 @@
                                                 android:singleLine="true"
                                                 android:text=""
                                                 android:textColor="@color/white"
-                                                android:textSize="36dp"></EditText>
+                                                android:textSize="30dp"></EditText>
                                     </FrameLayout>
                                 </LinearLayout>
 
@@ -171,7 +171,7 @@
                                             android:layout_height="50dp"
                                             android:text="性别"
                                             android:textColor="@color/black"
-                                            android:textSize="36dp"></TextView>
+                                            android:textSize="30dp"></TextView>
 
                                     <LinearLayout
                                             android:layout_width="401dp"
@@ -194,7 +194,7 @@
                                                     android:paddingLeft="35dp"
                                                     android:text="男孩"
                                                     android:textColor="@color/white"
-                                                    android:textSize="36dp"></TextView>
+                                                    android:textSize="30dp"></TextView>
 
                                         </FrameLayout>
 
@@ -211,7 +211,7 @@
                                                     android:paddingLeft="35dp"
                                                     android:text="女孩"
                                                     android:textColor="@color/white"
-                                                    android:textSize="36dp"></TextView>
+                                                    android:textSize="30dp"></TextView>
 
                                         </FrameLayout>
                                     </LinearLayout>
@@ -229,7 +229,7 @@
                                             android:layout_height="50dp"
                                             android:text="年级"
                                             android:textColor="@color/black"
-                                            android:textSize="36dp"></TextView>
+                                            android:textSize="30dp"></TextView>
 
                                     <FrameLayout
                                             android:layout_width="401dp"
@@ -245,7 +245,7 @@
                                                 android:paddingLeft="35dp"
                                                 android:text="二年级"
                                                 android:textColor="@color/white"
-                                                android:textSize="36dp"></TextView>
+                                                android:textSize="30dp"></TextView>
 
                                     </FrameLayout>
                                 </LinearLayout>

+ 1 - 2
app/src/main/res/layout/adapter_item_record_user.xml

@@ -44,8 +44,7 @@
                         android:gravity="center|left"
                         android:text="火车的故事"
                         android:textColor="#373737"
-                        android:textSize="27dp"
-                        android:textStyle="bold"></TextView>
+                        android:textSize="27dp"></TextView>
 
                 <ImageView
                         android:id="@+id/adapter_item_record_user_del"

+ 3 - 4
app/src/main/res/layout/adapter_item_safflower.xml

@@ -4,7 +4,7 @@
         android:layout_width="550dp"
         android:layout_height="52dp"
         android:layout_gravity="center"
-        android:background="@color/white"
+        android:background="#FFE5BF"
         roundframelayout:radio="26">
 
     <FrameLayout
@@ -24,9 +24,8 @@
                     android:layout_marginLeft="22dp"
                     android:gravity="center|left"
                     android:text="别人对我的作品评论,回复1次"
-                    android:textColor="@color/black"
-                    android:textSize="26dp"
-                    android:textStyle="bold"></TextView>
+                    android:textColor="#666666"
+                    android:textSize="26dp"></TextView>
 
             <LinearLayout
                     android:layout_width="wrap_content"

+ 2 - 2
app/src/main/res/layout/cusjzplayer_controller.xml

@@ -227,8 +227,8 @@
 
         <ImageView
                 android:id="@+id/start"
-                android:layout_width="80dp"
-                android:layout_height="80dp"
+                android:layout_width="60dp"
+                android:layout_height="60dp"
                 android:src="@drawable/jz_click_play_selector" />
     </LinearLayout>
 

+ 2 - 1
app/src/main/res/layout/fragment_main_character.xml

@@ -47,7 +47,8 @@
                             android:id="@+id/fragment_main_character_img"
                             android:layout_width="match_parent"
                             android:layout_height="match_parent"
-                            android:layout_marginBottom="35dp"></ImageView>
+                            android:layout_marginBottom="35dp"
+                            android:scaleType="fitXY"></ImageView>
 
                 </LinearLayout>
             </FrameLayout>

+ 13 - 11
app/src/main/res/layout/fragment_main_user.xml

@@ -78,9 +78,8 @@
                                             android:id="@+id/fragment_main_user_phonenum"
                                             android:layout_width="wrap_content"
                                             android:layout_height="48dp"
-                                            android:text=""
                                             android:textColor="#272727"
-                                            android:textSize="34dp"
+                                            android:textSize="30dp"
                                             app:layout_constraintStart_toStartOf="parent"
                                             app:layout_constraintTop_toTopOf="parent"></TextView>
 
@@ -89,9 +88,8 @@
                                             android:layout_width="wrap_content"
                                             android:layout_height="48dp"
                                             android:layout_marginBottom="80dp"
-                                            android:text=""
-                                            android:textColor="#272727"
-                                            android:textSize="34dp"
+                                            android:textColor="#999999"
+                                            android:textSize="27dp"
                                             app:layout_constraintBottom_toBottomOf="parent"
                                             app:layout_constraintStart_toStartOf="parent"></TextView>
 
@@ -131,7 +129,8 @@
                                                 android:layout_height="match_parent"
                                                 android:gravity="center"
                                                 android:text="粉丝"
-                                                android:textSize="28dp"></TextView>
+                                                android:textColor="#999999"
+                                                android:textSize="27dp"></TextView>
 
                                         <Space
                                                 android:layout_width="5dp"
@@ -143,7 +142,8 @@
                                                 android:layout_height="match_parent"
                                                 android:gravity="center"
                                                 android:text="0"
-                                                android:textSize="28dp"></TextView>
+                                                android:textColor="#999999"
+                                                android:textSize="27dp"></TextView>
                                     </LinearLayout>
 
                                     <FrameLayout
@@ -172,7 +172,8 @@
                                                 android:layout_height="match_parent"
                                                 android:gravity="center"
                                                 android:text="播放"
-                                                android:textSize="28dp"></TextView>
+                                                android:textColor="#999999"
+                                                android:textSize="27dp"></TextView>
 
                                         <Space
                                                 android:layout_width="5dp"
@@ -184,7 +185,8 @@
                                                 android:layout_height="match_parent"
                                                 android:gravity="center"
                                                 android:text="0"
-                                                android:textSize="28dp"></TextView>
+                                                android:textColor="#999999"
+                                                android:textSize="27dp"></TextView>
                                     </LinearLayout>
                                 </androidx.constraintlayout.widget.ConstraintLayout>
                             </FrameLayout>
@@ -283,14 +285,14 @@
                                     android:layout_height="match_parent"
                                     android:src="@drawable/fragment_my_message_notification"></ImageView>
 
-                            <ImageView
+                            <com.edufound.reader.cusview.RoundFrameLayout
                                     android:id="@+id/fragment_main_user_unread_icon"
                                     android:layout_width="11dp"
                                     android:layout_height="11dp"
                                     android:layout_gravity="right|top"
                                     android:layout_marginTop="10dp"
                                     android:layout_marginRight="10dp"
-                                    android:background="@color/red"></ImageView>
+                                    android:background="@color/red"></com.edufound.reader.cusview.RoundFrameLayout>
                         </FrameLayout>
 
                         <ImageView

+ 2 - 1
app/src/main/res/layout/popupwindow_exit_app.xml

@@ -16,7 +16,8 @@
         <ImageView
                 android:id="@+id/popupwindow_exit_app_image"
                 android:layout_width="match_parent"
-                android:layout_height="341dp"></ImageView>
+                android:layout_height="341dp"
+                android:scaleType="fitXY"></ImageView>
 
         <LinearLayout
                 android:layout_width="match_parent"

+ 11 - 2
app/src/main/res/layout/popupwindow_record_status.xml

@@ -16,6 +16,8 @@
                 android:layout_height="630dp"
                 android:layout_gravity="center|left"
                 android:background="@drawable/popup_record_status_over"
+                android:scaleX="0.9"
+                android:scaleY="0.9"
                 android:visibility="gone">
 
             <LinearLayout
@@ -257,6 +259,8 @@
                 android:layout_height="630dp"
                 android:layout_gravity="center|left"
                 android:background="@drawable/popup_record_status_upload_start"
+                android:scaleX="0.9"
+                android:scaleY="0.9"
                 android:visibility="gone">
 
             <TextView
@@ -300,6 +304,8 @@
                 android:layout_height="630dp"
                 android:layout_gravity="center|left"
                 android:background="@drawable/popup_record_status_upload_success"
+                android:scaleX="0.9"
+                android:scaleY="0.9"
                 android:visibility="gone">
 
             <TextView
@@ -308,7 +314,7 @@
                     android:layout_gravity="center"
                     android:layout_marginTop="20dp"
                     android:gravity="center"
-                    android:lineHeight="54dp"
+                    android:lineSpacingMultiplier="1.6"
                     android:text="恭喜您的作品上传成功\n快去听听自己的作品吧!"
                     android:textColor="#AB722D"
                     android:textSize="40dp"></TextView>
@@ -339,6 +345,8 @@
                 android:layout_height="630dp"
                 android:layout_gravity="center|left"
                 android:background="@drawable/popup_record_status_upload_error"
+                android:scaleX="0.9"
+                android:scaleY="0.9"
                 android:visibility="gone">
 
             <LinearLayout
@@ -432,7 +440,8 @@
                 android:layout_width="77dp"
                 android:layout_height="77dp"
                 android:layout_gravity="top|right"
-                android:layout_marginTop="80dp"
+                android:layout_marginTop="110dp"
+                android:layout_marginRight="30dp"
                 android:src="@drawable/activity_loginalert_close"></ImageView>
     </FrameLayout>
 

+ 27 - 0
app/src/main/res/layout/toast.xml

@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:layout_gravity="center"
+        android:gravity="center">
+
+    <LinearLayout
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_gravity="center"
+            android:background="@drawable/toast_bg"
+            android:gravity="center"
+            android:orientation="horizontal"
+            android:padding="30dp">
+
+        <TextView
+                android:id="@+id/tvToast"
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:gravity="center"
+                android:lineSpacingMultiplier="1.6"
+                android:text="222222222222222\n2222"
+                android:textColor="#AB722D"
+                android:textSize="27dp" />
+    </LinearLayout>
+</LinearLayout>