我已经关注了Android开发网站上的开发页面,但我无法将操作栏拆分为屏幕的顶部和底部。
我有一个菜单xml定义了几个选项:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/stop_services"
android:icon="@drawable/ic_launcher"
android:title="@string/stop"
android:showAsAction="ifRoom|withText"/>
<item android:id="@+id/start_services"
android:icon="@drawable/pushpin"
android:title="@string/start"
android:showAsAction="ifRoom|withText"/>
</menu>
在我的清单中,我将uiOption设置为:
<activity
android:label="@string/app_name"
android:name=".ProxilenceHome"
uiOptions="splitActionBarWhenNarrow" >
我按如下方式加载活动中的菜单项:
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.home_menu, menu);
return true;
}
但是在测试应用程序时,操作栏永远不会分裂。有没有人知道这个问题/我是否错过了什么?
非常感谢。
答案 0 :(得分:26)
使用android:uiOptions="splitActionBarWhenNarrow"
对我有用。
没有“android:”它不起作用
答案 1 :(得分:0)
在横向模式导航标签中使用此功能,但在纵向模式下无效。
final ActionBar bar = this.getActionBar();
bar.setDisplayHomeAsUpEnabled(false);
bar.setDisplayOptions(0, ActionBar.DISPLAY_SHOW_TITLE);
bar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
mTabsAdapter = new TabsAdapter(this, mViewPager);
Tab tab1=mTabsAdapter.addTab(bar.newTab().setText("DemoGraphics"),ListFragmentDemo.PatientFragment.class, null);
public boolean onCreateOptionsMenu(Menu menu)
{
MenuInflater inflater=getMenuInflater();
inflater.inflate(R.menu.mainmenu, menu);
super.onCreateOptionsMenu(menu);
return true;
}
mainmenu.xml
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/menu_dCollection"
android:icon="@drawable/overflowmenu"
android:showAsAction="ifRoom|withText"
>
<menu>
<item android:id="@+id/menu_demo"
android:title="DemoGraphics" />
<item android:id="@+id/menu_visits"
android:title="Visits" />
<item android:id="@+id/menu_vitals"
android:title="Vitals" />
</menu>
</item>
<item android:id="@+id/add" android:showAsAction="ifRoom" android:title="Add" android:icon="@drawable/ic_action_open"></item>
<item android:id="@+id/previous" android:showAsAction="ifRoom" android:title="Back" android:icon="@drawable/back"></item>
<item android:id="@+id/nextFragment" android:showAsAction="ifRoom" android:title="Next" android:icon="@drawable/next"></item>
<item android:id="@+id/menu_search" android:showAsAction="ifRoom" android:title="Search" android:actionViewClass="android.widget.SearchView" android:icon="@drawable/search" />
</menu>
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
android:installLocation="preferExternal"
package="savy.exam.actionbartabspager"
android:versionCode="1"
android:versionName="1.0"
android:uiOptions="splitActionBarWhenNarrow"
>
答案 2 :(得分:0)
尝试在菜单xml中添加此行:
<menu
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:myapp="http://schemas.android.com/apk/res-auto" >
然后在你的item元素中:
myapp:showAsAction="always|withText"
它帮助了我。