getFragmentManager()。getFragmentById(R.id.fragment)返回null

时间:2014-07-22 08:12:10

标签: android android-fragments

我制作了一个使用操作栏的简单应用程序,我想检测哪个Fragment已加载。不幸的是,以下行总是返回null:

getFragmentManager().getFragmentById(R.id.fragment) 

要加载新的Fragment,我正在使用:

getFragmentManager().beginTransaction().replace(R.id.content_frame, fragment).commit();

1 个答案:

答案 0 :(得分:5)

因为FragmentTransaction将片段的ID设置为R.id.content_frame,这是容器。所以getFragmentManager().getFragmentById(R.id.content_frame)会给你片段。

此外,建议使用支持库的片段和appcompat-v7(getSupportFragmentManager()android.support.v4.Fragment,从appcompat的ActionBarActivity扩展),因为它们更加维护。