一个activity中有两个fragment,第一个fragment的banner正常,第二个fragment的banner不显示,无报错

一个activity中有两个fragment,第一个fragment的banner正常,第二个fragment的banner不显示,无报错


```java
 banner.setAdapter(new BannerImageAdapter<BannerBean>(list) {
            @Override
            public void onBindView(BannerImageHolder holder, BannerBean data, int position, int size) {
                        //data中数据测试正常
                        Glide.with(getContext()).load(data.getAdvImg()).into(holder.imageView);

            }
        }).addBannerLifecycleObserver((LifecycleOwner) getContext());

```

@ada 上面问题怎么解决?

1.布局文件如下:

<com.youth.banner.Banner
                android:id="@+id/banner"
                android:layout_width="match_parent"
                android:layout_height="150dp"
                android:layout_margin="10dp"
               />

2.用log测试data中数据加载正常
3. “修改Glide的参数以适应当前的布局” 具体修改哪些参数?
4.“检查第二个fragment中的banner是否与第一个fragment中的banner使用的是同一个Banner组件”,如果是同一banner组件应该如何操作?

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 这篇博客: Android Banner 的简单使用步骤中的 Step 5: 在Activity 或 Fragment 中使用Banner 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:
    public class FinanceFragment extends com.lzw.wsbank.base.BaseFragment {
    
        Banner banner;
        List images = new ArrayList<>();
        List titles = new ArrayList<>();
    
        @Override
        public View initView() {
            View view = View.inflate(mContext, R.layout.fragment_finance, null);
            banner = (Banner) view.findViewById(R.id.banner);
    
            //添加图片资源
            images.add("http://img.lanrentuku.com/img/allimg/0906/8_220800_1.jpg");
            images.add("http://img.lanrentuku.com/img/allimg/1506/14332974643135.jpg");
            images.add("http://img.lanrentuku.com/img/allimg/1506/14343524956456.jpg");
            titles.add("图片——1");
            titles.add("图片——2");
            titles.add("图片——3");
            getBanner_2();
         
        }
    
        /**
         * 详细使用
         */
        private void getBanner_2() {
            //设置banner样式
            banner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR_TITLE);
            //设置图片加载器
            banner.setImageLoader(new GlideImageLoader());
            //设置图片集合
            banner.setImages(images);
            //设置banner动画效果
            banner.setBannerAnimation(Transformer.DepthPage);
            //设置标题集合(当banner样式有显示title时)
            banner.setBannerTitles(titles);
            //设置自动轮播,默认为true
            banner.isAutoPlay(true);
            //设置轮播时间
            banner.setDelayTime(1500);
            //设置指示器位置(当banner模式中有指示器时)
            banner.setIndicatorGravity(BannerConfig.CENTER);
            //banner设置方法全部调用完毕时最后调用
            banner.start();
        }
    
    }

     

     


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^