Fragment 使用总结

fragment

activity生命周期对fragment的影响
activity生命周期对fragment的影响

ViewPager

  • fragment懒加载
private boolean isCreate;
   private boolean isVisibleToUser;

   @Override
   public void setUserVisibleHint(boolean isVisibleToUser) {
       this.isVisibleToUser=isVisibleToUser;
       loadData();
   }

   public void loadData(){
       //加载数据
   }
  • 出现空白
    viewpager 使用 FragmentPagerAdapter时,如果adapter中的fragment个数比viewpager可缓存的fragment个数多,当fragment被系统回收后,可能出现空白。可使用FragmentStatePagerAdapter解决此问题。

其他问题

  • 多个fragment引起的消息透传
    在同一个activity中使用show hide切换显示fragment时可能会遇到点击当前显示fragment空白处,其他fragment 响应点击实现的问题。解决方法就是在fragment 的布局文件的根布局中添加 android:clickable="true" 或者给根布局添加 onTouchListener 将点击事件消费掉
  • viewpager 中动态添加删除
    viewpager中的adapter不同于listview等列表的Adapter,使用notifyDataSetChanged(),并不会引起界面的刷新。如果要删除的界面已在viewpager缓存中需要使用代码将fragmentmanager中的fragment删除,并重新给viewpager设置adapter,要添加的界面position已经有fragment的时候,操作一样。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容