如何将活动转换为要在抽屉中使用的片段

时间:2014-08-19 13:05:22

标签: android layout android-activity fragment native

我打算将我的应用中的活动转换为片段以实现抽屉。但我以前从未使用过碎片,看起来有点复杂,所以我要求快速帮助:

什么是基本"规则"从活动转换为片段?

到目前为止,我所拥有的只是

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

变为

public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    return inflater.inflate(R.layout.activity_main, container, false);

还有什么?我想我还必须将每个布局从Linear / Relative更改为Fragment。

编辑我似乎无法正确理解。我有3个活动:

A - 基础活动,没有布局,启动服务,线程,做了很多。大多数后端

B - 扩展A,有布局。它是主要的创业活动。大多数前端

C - 扩展A,有布局。它是通过B的按钮启动的。

有关哪些以及如何将其转换为片段的任何建议?

2 个答案:

答案 0 :(得分:1)

让你的片段继承自Fragment或适当的子类。

确保您的主要活动在XML中具有DrawerLayout。您也可以使用

getFragmentManager().beginTransaction.Add

将抽屉添加到视图中。

额外参考:
http://developer.android.com/training/implementing-navigation/nav-drawer.html http://developer.android.com/guide/components/fragments.html

答案 1 :(得分:0)

好的,让我们保持简单。假设我有ListFragment,我想把它放在我的活动中。我想添加它的一种方法是:

  • 将一个frame_layout添加到xml并使用布局设置并将其标识为“@ id + / example_list”
  • 在活动的onCreate中,添加代码

    CustomListFragmentClass myCustomListFragmentClass;
    getFragmentManager().beginTransaction()
    .replace(R.id.example_list, myCustomListFragmentClass, "listFrag").commit();
    

片段现在应该可见。