Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何在NavigatorActivity的上下文中使用ActionBarActivity?_Android_Android Fragments_Android Actionbar_Uinavigationbar_Contextual Action Bar - Fatal编程技术网

Android 如何在NavigatorActivity的上下文中使用ActionBarActivity?

Android 如何在NavigatorActivity的上下文中使用ActionBarActivity?,android,android-fragments,android-actionbar,uinavigationbar,contextual-action-bar,Android,Android Fragments,Android Actionbar,Uinavigationbar,Contextual Action Bar,我正在尝试适应我自己的应用程序,但我想用ActionBarActivity来替换片段部分。我需要能够在每个(片段)中使用一个唯一的操作栏,并在整个抽屉中导航。我研究发现,虽然ActionBarActivity扩展了FragmentActivity,但试图编码fragmentfragment=newplanetfragment()是一个很大的禁忌。如果代码看起来很可笑,请原谅我的天真,我知道这可能是真的 编辑:我现在意识到碎片活动不是我想要的,而是一个碎片 基本上我不知道如何适应: Fragmen

我正在尝试适应我自己的应用程序,但我想用
ActionBarActivity
来替换片段部分。我需要能够在每个(片段)中使用一个唯一的操作栏,并在整个抽屉中导航。我研究发现,虽然
ActionBarActivity
扩展了
FragmentActivity
,但试图编码
fragmentfragment=newplanetfragment()是一个很大的禁忌。如果代码看起来很可笑,请原谅我的天真,我知道这可能是真的

编辑:我现在意识到碎片活动不是我想要的,而是一个碎片

基本上我不知道如何适应:

Fragment fragment = new PlanetFragment();
    Bundle args = new Bundle();
    args.putInt(PlanetFragment.ARG_PLANET_NUMBER, position);
    fragment.setArguments(args);

    FragmentManager fragmentManager = getFragmentManager();
    fragmentManager.beginTransaction().replace(R.id.content_frame, fragment).commit();
允许我使用预先编码的
ActionBarActivity
作为片段。谢谢


编辑:我开始看到
NavigatorActivity
本身扩展了
ActionBarActivity
,人们可能会根据显示的片段更改操作栏。然而,我仍然不太明白为什么操作栏可以有相同/不同的按钮,并且每个片段的功能不同

正常设置导航抽屉。如果你想在每个片段中添加一个新的actionbar,只需调用

@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
    super.onCreateOptionsMenu(menu, inflater);
    menu.clear();
    inflater.inflate(R.menu.menu_fragmentTwo, menu);  
}
在每一个片段中制作这个会给你带来新的可能性。如果要对其进行个性化处理,请执行onCreate()

Ps:我看你有点搞不清楚NavigationDrawer是如何工作的。只需创建一个ActionBarActivity来展开NavigationDrawer,并在每次单击NavigationDrawer时检索片段。使用它真的很简单


如果使用Android Studio,请转到文件/导入示例并选择NavigationDrawer示例,这将有助于您理解它。

A
FragmentActivity
不是
Fragment
,您不能使用活动代替片段。对于每个片段的操作栏,您到底需要什么是唯一的?它可能通过覆盖各种
选项menu
方法来实现。您可能正在查找。