如何从FragmentActivity获取片段实例?

我在FragmentActivity中设置了内容视图,活动将根据布局文件中指定的类名为我创build片段实例。 但是我怎样才能得到这个片段实例呢?

public class MyActivity extends FragmentActivity { @Override protected void onCreate(Bundle extra) { super.onCreate(extra); setContentView(R.layout.page_fragment); } } <?xml version="1.0" encoding="utf-8"?> <fragment xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/pageview" android:layout_width="match_parent" android:layout_height="match_parent" android:name="org.xi.android.PageFragment" /> 

你可以在FragmentManager使用findFragmentById

由于您正在使用支持库(您正在扩展FragmentActivity),您可以使用:

 getSupportFragmentManager().findFragmentById(R.id.pageview) 

如果您没有使用支持库(所以您使用的是Honeycomb +,而您不想使用支持库):

 getFragmentManager().findFragmentById(R.id.pageview) 

请考虑即使在Honeycomb +上也推荐使用支持库。

在扩展FragmentActivity的类中获取片段实例:

 MyclassFragment instanceFragment= (MyclassFragment)getSupportFragmentManager().findFragmentById(R.id.idFragment); 

要在扩展Fragment的类中获取片段实例,请执行以下操作:

 MyclassFragment instanceFragment = (MyclassFragment)getFragmentManager().findFragmentById(R.id.idFragment);