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