加载fragment,调用时的坑

来源:互联网 发布:手机自动播音软件 编辑:程序博客网 时间:2024/06/06 08:26

也不算是坑,是自己写的时候没注意到,记下来,留个教训

一个MainActivity 中添加一个fragment

protected void onCreate(Bundle savedInstanceState) {

mMainFragment = new MainFragment();getSupportFragmentManager().beginTransaction()        .replace(R.id.activity_main,
new MainFragment()
).commit();
}


这个fragment中有方法refresh(),a为fragment的初始化的一个对象,b是a的方法

void refresh(){

a.b();

}


在其他activity中调用

((MainActivity)getActivity()).mMainFragment.refreshNum();
会爆出a为null的错误

原因是 MainFragment加载fragment时用的new MainFragment()应修改为:

getSupportFragmentManager().beginTransaction()        .replace(R.id.activity_main, mMainFragment).commit();

0 0
原创粉丝点击