Fragment结合ViewPager来回切换的问题

本文探讨了使用ViewPager结合Fragment实现多页切换时遇到的问题,特别是关于Listview在不同Fragment间切换时可能出现的显示异常现象。文章分析了问题产生的两个主要原因,并提供了相应的解决思路。
摘要由CSDN通过智能技术生成

现在Fragment结合Viewpager实现的多页切换效果很是流行。

豌豆荚截图20130627201338 

有些同学在开发过程中,尤其是刚开始接触的时候,可能会遇到这样的问题:

几个fragment来回切换,fragment里面包含的listview不显示了。

究其原因目前遇到两个:

1,在FragmentPagerAdapter里不明缘由的重载了方法

public Object instantiateItem(ViewGroup container, int position);

根据官方解释

R%P)GD6KTWJR6XQ%K7LZT}Y

意思是在指定position的位置创建新的page,具体的使用和解释可以参考

http://blog.csdn.net/dyllove98/article/details/8806576

 

 

2,Fragment的生命周期相关

Fragment的生命周期跟activity的有些类似,大致的生命周期如下:

onCreate

onCreateView

onStart

onResume

onPause

onStop

onDestroyView

onDestroy

通过viewPager来控制多个Fragment的时候,在fragment切换的时候,会择机删除不可见的fragment中对应的view,这时该fragment会依次响应onPause,onStop,onDestroyView,等到需要显示的时候会依次响应onCreateView,onStart,onResume,所以若是fragment包含有listview之类的控件,需要确认一下在onCreateView的时候,listview是否跟adapter绑定。

转载于:https://www.cnblogs.com/richiewang/p/3168622.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值