Pq 3 years ago
parent
commit
5a201a2c57

+ 2 - 2
student/src/main/java/com/cooleshow/student/adapter/HomeHotAlbumAdapter.java

@@ -19,8 +19,8 @@ import java.util.List;
  */
 public class HomeHotAlbumAdapter extends BaseQuickAdapter<HotAlbumBean.RowsBean, BaseViewHolder> {
 
-    public HomeHotAlbumAdapter(List<HotAlbumBean.RowsBean> data) {
-        super(R.layout.layout_home_hot_album_item, data);
+    public HomeHotAlbumAdapter() {
+        super(R.layout.layout_home_hot_album_item);
     }
 
     @Override

+ 21 - 16
student/src/main/java/com/cooleshow/student/ui/main/HomeFragment.java

@@ -78,6 +78,7 @@ import java.util.TreeMap;
 public class HomeFragment extends BaseMVPFragment<FragmentHomeLayoutBinding, HomePresenter> implements HomeContract.HomeView, View.OnClickListener {
     private boolean isShowFlashPage = false;
     private String mCurrentShowNoticeId;
+    private HomeHotAlbumAdapter mAlbumAdapter;
 
     @Override
     public void onClick(View view) {
@@ -187,6 +188,22 @@ public class HomeFragment extends BaseMVPFragment<FragmentHomeLayoutBinding, Hom
         mViewBinding.ivAvatar.setOnClickListener(this);
         mViewBinding.bgAnnouncement.setOnClickListener(this);
 
+        LinearLayoutManager manager = new LinearLayoutManager(getContext());
+        manager.setOrientation(LinearLayoutManager.HORIZONTAL);
+        mViewBinding.rvHotAlbum.setLayoutManager(manager);
+        HomeHotAlbumDecoration homeHotAlbumDecoration = new HomeHotAlbumDecoration(0, 0, 0, SizeUtils.dp2px(14), 0);
+        mAlbumAdapter = new HomeHotAlbumAdapter();
+        mViewBinding.rvHotAlbum.addItemDecoration(homeHotAlbumDecoration);
+        mViewBinding.rvHotAlbum.setAdapter(mAlbumAdapter);
+
+        mAlbumAdapter.setOnItemClickListener((adapter, view, position) -> {
+            HotAlbumBean.RowsBean item = (HotAlbumBean.RowsBean) adapter.getItem(position);
+            ARouter.getInstance()
+                    .build(RouterPath.WebCenter.ACTIVITY_HTML)
+                    .withString(WebConstants.WEB_URL, WebConstants.STUDENT_MUSIC_ALBUM_DETAIL + item.id)
+                    .navigation();
+        });
+
         mViewBinding.scrollLayout.setOnScrollChangeListener((NestedScrollView.OnScrollChangeListener) (v, scrollX, scrollY, oldScrollX, oldScrollY) -> {
             boolean localVisibleRect = getLocalVisibleRect(getActivity(), banner, 10);
             //banner可见的时候就自动循环,否则就停止,解决问题:在scrollview到最底部时候,由于banner自动到第一个时候就往上顶一段距离
@@ -287,22 +304,10 @@ public class HomeFragment extends BaseMVPFragment<FragmentHomeLayoutBinding, Hom
             mViewBinding.clHotAlbum.setVisibility(View.GONE);
             return;
         }
-        mViewBinding.clHotAlbum.setVisibility(View.VISIBLE);
-        LinearLayoutManager manager = new LinearLayoutManager(getContext());
-        manager.setOrientation(LinearLayoutManager.HORIZONTAL);
-        mViewBinding.rvHotAlbum.setLayoutManager(manager);
-        HomeHotAlbumDecoration homeHotAlbumDecoration = new HomeHotAlbumDecoration(0, 0, 0, SizeUtils.dp2px(14), 0);
-        HomeHotAlbumAdapter albumAdapter = new HomeHotAlbumAdapter(data.rows);
-        mViewBinding.rvHotAlbum.addItemDecoration(homeHotAlbumDecoration);
-        mViewBinding.rvHotAlbum.setAdapter(albumAdapter);
-        albumAdapter.setOnItemClickListener((adapter, view, position) -> {
-            HotAlbumBean.RowsBean item = (HotAlbumBean.RowsBean) adapter.getItem(position);
-            ARouter.getInstance()
-                    .build(RouterPath.WebCenter.ACTIVITY_HTML)
-                    .withString(WebConstants.WEB_URL, WebConstants.STUDENT_MUSIC_ALBUM_DETAIL + item.id)
-                    .navigation();
-        });
-
+        if (mAlbumAdapter != null) {
+            mViewBinding.clHotAlbum.setVisibility(View.VISIBLE);
+            mAlbumAdapter.setNewInstance(data.rows);
+        }
     }
 
     @Override