Fragment切换方式与Recyclerview滚动影响

修复了Fragment内嵌RecyclerView横向滚动时,切换Fragment后滚动条无法回滚定位的bug。问题源于使用replace方法导致Fragment销毁重建,进而反复初始化并调用setAdapter。解决方案是改用show和hide方法,简化了逻辑。
摘要由CSDN通过智能技术生成

解决了一个十分低级的bug,涉及到嵌套进fragment的横向滚动的recyclerview中,当切换去另一个碎片,滚动条无法回滚定位的问题。
之前一直以为是生命周期控制里的逻辑问题,盯死了onstart修改逻辑,最后无奈了给生命周期写log才发现就是个低级错误= =。
切换碎片时用了replace方法,而这个方法是必然销毁重建的,导致不断运行初始化函数,不断执行setadapter。
最后改成show和hide完事。

        for(int i = 0 ; i < switchPageNumber ; i++){
   
            if(i != position){
                if(!fragments[i].isAdded())
                {
                    getFragmentManager().beginTransaction().add(R.id.linearlayout_fragment , fragments[i]).commit();
                }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值