From 1df231fd6aafa221aef3532d069c7e27d4331be7 Mon Sep 17 00:00:00 2001
From: Linjiajia <319408893@qq.com>
Date: 星期日, 27 八月 2023 19:21:01 +0800
Subject: [PATCH] 功能全部完成

---
 app/src/main/java/com/application/zhangshi_app_android/ui/function/ImageCarouselFragment.java |   56 ++++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 42 insertions(+), 14 deletions(-)

diff --git a/app/src/main/java/com/application/zhangshi_app_android/ui/function/ImageCarouselFragment.java b/app/src/main/java/com/application/zhangshi_app_android/ui/function/ImageCarouselFragment.java
index 8eec0b0..97f1091 100644
--- a/app/src/main/java/com/application/zhangshi_app_android/ui/function/ImageCarouselFragment.java
+++ b/app/src/main/java/com/application/zhangshi_app_android/ui/function/ImageCarouselFragment.java
@@ -10,6 +10,7 @@
 import com.android.app_base.base.viewmodel.BaseViewModel;
 import com.android.app_base.utils.GlideUtil;
 import com.application.zhangshi_app_android.R;
+import com.application.zhangshi_app_android.bean.BannerBean;
 import com.application.zhangshi_app_android.databinding.FragmentImageCarouselBinding;
 import com.youth.banner.adapter.BannerImageAdapter;
 import com.youth.banner.holder.BannerImageHolder;
@@ -26,8 +27,9 @@
  */
 public class ImageCarouselFragment extends BaseFragment<FragmentImageCarouselBinding, ImageCarouselFragmentViewModel> {
 
-    private List<String> imageList;
-    private BannerImageAdapter<String> adapter;
+    private List<BannerBean> imageList;
+    private List<BannerBean> chooseList = new ArrayList<>();
+    private BannerImageAdapter<BannerBean> adapter;
     private ImageCarouselFragment() {
     }
 
@@ -38,22 +40,32 @@
         return fragment;
     }
 
-    public void setImageList(List<String> imageList) {
+    public void setImageList(List<BannerBean> imageList) {
         this.imageList = imageList;
         Bundle args = new Bundle();
         args.putSerializable("imgList", (Serializable) imageList);
         setArguments(args);
-        if (imageList == null || imageList.size() == 0) {
+        chooseList = new ArrayList<>();
+        //閫夊嚭琚�変腑鐨勫浘鐗�
+        for (BannerBean bean : imageList) {
+            if (bean.getChoose() == 1) {
+                chooseList.add(bean);
+            }
+        }
+        if (chooseList == null || chooseList.size() == 0) {
             binding.layoutDataNull.setVisibility(View.VISIBLE);
             binding.banner.setVisibility(View.GONE);
         } else {
             binding.layoutDataNull.setVisibility(View.GONE);
             binding.banner.setVisibility(View.VISIBLE);
             if (adapter != null) {
-                adapter.setDatas(imageList);
+                adapter.setDatas(chooseList);
             }
         }
+    }
 
+    public List<BannerBean> getImageList() {
+        return imageList;
     }
 
     @Override
@@ -69,16 +81,32 @@
     @Override
     protected void initParam() {
         if (getArguments() != null) {
-            imageList = (List<String>) getArguments().getSerializable("imgList");
+            imageList = (List<BannerBean>) getArguments().getSerializable("imgList");
+            if (imageList != null){
+                chooseList = new ArrayList<>();
+                for (BannerBean bannerBean : imageList) {
+                    if (bannerBean.getChoose() == 1){
+                        chooseList.add(bannerBean);
+                    }
+                }
+            }
         }
     }
 
     @Override
     protected void initView() {
-        adapter = new BannerImageAdapter<String>(imageList) {
+        if (imageList != null) {
+            chooseList = new ArrayList<>();
+            for (BannerBean bannerBean : imageList) {
+                if (bannerBean.getChoose() == 1){
+                    chooseList.add(bannerBean);
+                }
+            }
+        }
+        adapter = new BannerImageAdapter<BannerBean>(chooseList) {
             @Override
-            public void onBindView(BannerImageHolder holder, String data, int position, int size) {
-                GlideUtil.loadImage(data, holder.imageView);
+            public void onBindView(BannerImageHolder holder, BannerBean data, int position, int size) {
+                GlideUtil.loadImage(data.getUrl(), holder.imageView);
             }
 
             @Override
@@ -89,24 +117,24 @@
                         ViewGroup.LayoutParams.MATCH_PARENT,
                         ViewGroup.LayoutParams.MATCH_PARENT);
                 imageView.setLayoutParams(params);
-                return new BannerImageHolder(imageView);                    }
+                imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
+                return new BannerImageHolder(imageView);
+            }
         };
         binding.banner.setAdapter(adapter)
                 .addBannerLifecycleObserver(this)//娣诲姞鐢熷懡鍛ㄦ湡瑙傚療鑰�
                 .setIndicator(new CircleIndicator(getSelfActivity()));
 
-        if (imageList == null || imageList.size() == 0) {
+        if (chooseList == null || chooseList.size() == 0) {
             binding.layoutDataNull.setVisibility(View.VISIBLE);
             binding.banner.setVisibility(View.GONE);
         } else {
             binding.layoutDataNull.setVisibility(View.GONE);
             binding.banner.setVisibility(View.VISIBLE);
             if (adapter != null) {
-                adapter.setDatas(imageList);
+                adapter.setDatas(chooseList);
             }
         }
-
-
     }
 
     @Override

--
Gitblit v1.9.1