在Fragment实现接口遇到的坑
来源:互联网 发布:知世故而不世故 下联 编辑:程序博客网 时间:2024/06/05 08:10
前几天的写的项目一直在虚拟机上面运行,一点问题没有,但是今天在真机上面试了一下结果出错,而且错误提示是空指针异常。
java.lang.NullPointerException: Attempt to invoke interface method 'void com.lylk.hcwy.fragment.WineListFragment$OnWineListFragmentClickListener.onAddClick(java.lang.String)' on a null object reference
但是以前明明在虚拟机上的时候一切正常啊,为了测试虚拟机上能正常运行把程序卸载重新拷了一遍结果还是正常运行。然后就开始百度实现接口时候虚拟机不出错但是真机出错的情况,当然百度的有点偏了,所以也没啥结果,但是看别人说的有的是因为没有初始化才出错的,所以我就想是不是因为没有初始化,但是明明在onAttach里面实现了。
@Override public void onAttach(Context context) { super.onAttach(context); Log.i("---LK---", "onAttach"); mCallBack = (OnWineListFragmentClickListener) getActivity(); }
所以就加上了打印日志看是否进入了这个方法,结果测试的结果就是没有进入这个方法,所以错误的原因找到了,因此百度起来也比较容易了。
最新的 onAttach(Context) 方法在API低于 23 的版本中不会去调用后者,只会去调用onAttach(Activity)。我都虚拟机是android 7.0的,而真机是android5.1.1的。所以虚拟机正常运行而真机不能运行。所以后来添加上
@Override public void onAttach(Activity activity) { Log.i("---LK---", "onAttach"); mCallBack = (OnWineListFragmentClickListener) getActivity(); super.onAttach(activity); }
程序正常运行。至此,问题解决。
使用的代码
if (mi1 == 0) { mCallBack.onAddClick(encryption); } else {//加密 mCallBack.onAddClick(input_password); }
public interface OnWineListFragmentClickListener { void onAddClick(String text); }
0 0
- 在Fragment实现接口遇到的坑
- Fragment遇到的坑
- Fragment 打包遇到的坑
- Fragment嵌套Fragment时遇到的那些坑
- 在实现从excel中读取数据作为接口参数遇到的问题
- CoordinatorLayout+TabLayout在Fragment中使用遇到的问题
- android TabHost+Fragment实现页面切换时遇到的问题
- 在Fragment中使用viewPager嵌套Fragment遇到的问题(双侧viewpager)
- 利用接口回调实现fragment与activity的通信
- 利用接口回调实现Fragment之间的跳转
- 回调接口实现Activity与Fragment之间的通信
- 利用接口回调实现fragment与activity的通信
- Fragment嵌套Fragment遇到的问题
- 在Fragment中点击按钮关闭当前的Fragment返回上一个Fragment该如何实现
- Fragment学习之使用接口回调的方式实现Fragment与Activity通信
- Fragment学习之使用接口回调的方式实现Fragment与Activity通信
- 从fragment开始向上查找实现了某个接口的parent Fragment 或者 Activity
- viewpager 、fragment 遇到的问题
- 【Linux】管道--实现进程间通信
- Windows驱动(3)-记一次内核模块导致蓝屏调试
- SpringMVC web.xml配置
- python 爬虫 教务系统模拟登陆 并下载课表
- Zynq-Linux移植学习笔记之13-i2c驱动配置
- 在Fragment实现接口遇到的坑
- eclipse 优化
- BabeLua--Lua调试器
- 2017 程序设计实习之C++部分作业题汇总
- jquery可见性过滤选择器
- K-means算法的Python实现
- ai-2698-八皇后问题-C语言-递归求解
- Mac的Finder上显示当前目录的全路径[不定期更新]
- oracle插入数据时,返回自增的id