在使用FragmentManager获取Fragment时,需要保证获取到的Fragment已经添加到FragmentManager中,否则会出现查找失败返回null的情况。
示例代码:
// 正确的获取Fragment方式 MyFragment myFragment = (MyFragment) getSupportFragmentManager().findFragmentById(R.id.fragment_container);
// 错误的获取Fragment方式 MyFragment myFragment = new MyFragment(); getSupportFragmentManager().beginTransaction().add(R.id.fragment_container, myFragment).commit(); myFragment = (MyFragment) getSupportFragmentManager().findFragmentById(R.id.fragment_container); // 这里会出现查找失败返回null的情况