Android中ViewPager + Fragment使用ButterKnife注解时出现空指针NullPoint的情况

Posted 安果移不动

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android中ViewPager + Fragment使用ButterKnife注解时出现空指针NullPoint的情况相关的知识,希望对你有一定的参考价值。

一、如题。当Fragment超过3个时,包括3个,这种情况下使用Butterknife注解有时候会出现空指针。原因如下:在onCreateView里面进行绑定后,如果连续滑动,ViewPager会移除Fragment,然后Fragment会执行下面的方法:

    @Override
    public void onDestroyView() 
        super.onDestroyView();
        ButterKnife.unbind(this);
    
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5

这样就把绑定的控件又给清空了,如果这时候对此Fragment里面的内容进行刷新,控件就会出现空指针问题。

二、解决方法。 
1.超过两个Fragment后就使用findViewById的方式。 
2.或者去掉onDestroyView里面的ButterKnife.unbind(this)方法。即不进行清除。

以上是关于Android中ViewPager + Fragment使用ButterKnife注解时出现空指针NullPoint的情况的主要内容,如果未能解决你的问题,请参考以下文章

使用 FragmentActivity 中的 viewPager 更改方向

关于Fragment的懒加载问题

Android 中ViewPager练习

Android 中 DrawerLayout + ViewPager 怎么解决滑动冲突

如何在 Android 中使用 TabLayout 和 ViewPager2

如何使用导航抽屉和viewpager/viewpager2在java中制作android应用程序