fragment里面嵌套ViewPager,解决切换fragment了之后ViewPager中的内容消失的问题

本文介绍了一种解决Fragment内ViewPager数据加载失败的方法。通过在onCreateView()中使用Handler延迟初始化ViewPager,有效解决了数据不显示的问题。虽然启动和切换时仍可见加载过程,但整体效果良好。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

fragment里面嵌套ViewPager,解决切换fragment了之后ViewPager中的内容消失的问题

处理之前gif截图(左) 、 处理之后gif截图(右)
beforeafter

处理代码如下:

    //在fragment的oncreateview()方法中通过发消息来初始化ViewPager
    //而不是在oncreateview()直接调用initViewPager()这个方法
    new Handler(new Handler.Callback() {
        @Override
        public boolean handleMessage(Message arg0) {
            if(arg0.what==1){
                initViewPager();//初始化ViewPager
            }
            return false;
        }
    }).sendEmptyMessage(1);

能成功解决viewpager中数据不显示的问题。

缺点:

启动时和切换fragment时能看到ViewPager加载的过程,但是过程非常短。

欢迎转载!转载请注明出处!!
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值