Fragment频繁创建和销毁view出现NullPointerException
项目环境
1. Butterknife注解view和绑定事件
2. fragment频繁切换操作
情况描述
在多次的切换fragment后,会出现view为空。恢复fragmen时异步数据访问,在handler中对view操作出现NullPointerException。
原因
在onCreateView里面ButterKnife.inject(this, view);
进行绑定后,如果连续操作,Fragment会执行下面的方法
@Override
public void onDestroyView() {
super.onDestroyView();
ButterKnife.unbind(this);
}
这样就把绑定的控件又给清空了,此时异步刷新控件,控件就会出现空指针问题。
解决办法
方法一:onDestroyView
中删掉ButterKnife.unbind(this);
方法二:手工绑定view的创建