Fragment结合ViewPager来回切换的问题

现在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绑定。

posted @ 2013-07-02 23:10  richie.wang  阅读(1522)  评论(0编辑  收藏  举报