2013-03-04 20 views
1

据Android开发者指南,如何将片段放置到Activity的默认根ViewGroup?

要开始,你的布局必须包括的ViewGroup中 你的地方与标签相关联的每个片段。确保ViewGroup有一个 资源ID,以便您可以从您的制表符交换代码中引用它。 或者,如果标签内容将填充活动布局 (不包括操作栏),那么您的活动根本不需要布局 (您甚至不需要调用setContentView())。相反,您可以将每个片段放置在默认根ViewGroup中,您可以使用android.R.id.content ID引用 引用(在片段事务处理过程中,您可以在下面的示例代码中看到此ID用于此示例代码)。

但是没有setContentView(),每当我打电话getActionBar(),它都会返回null。我想知道如何将片段放在default root ViewGroup?我是否通过XML或编程添加它?

回答

1

但是,如果没有的setContentView(),每当我打电话getActionBar(),它 返回null

在你考什么的Android版本的?如果我没有记错的话,这是在11和12 API级别上发生的,但是在其他版本上它可以正常工作。

为了避免复杂化,您应该将内容视图设置为简单的FrameLayout的布局,并将其用作碎片的容器。你也可以尝试只使用Window.FLAG_ACTION_BAR没有内容视图:

getWindow().requestFeature(Window.FEATURE_ACTION_BAR); 
0

您可以添加您的片段为默认的ViewGroup具有ID android.R.id.content。您不需要使用setContentView()来布置您的活动来完成此操作。

mFragmentTransaction.add(android.R.id.content, mFragment, mTag); 
相关问题