【发布时间】:2013-07-15 22:55:54
【问题描述】:
如何在显示的底部上显示第二个操作栏?我希望能够在应用程序运行时根据需要从代码中隐藏底部栏。
我希望始终显示操作按钮,不仅是在顶部没有空间的情况下(我隐藏了顶部操作栏,只有选项卡在那里)。顶部和底部栏应该是独立的。
图中底栏有:http://goo.gl/pFvHI
谢谢。
【问题讨论】:
-
使用拆分操作栏。检查 ABS 演示示例代码/文档。
如何在显示的底部上显示第二个操作栏?我希望能够在应用程序运行时根据需要从代码中隐藏底部栏。
我希望始终显示操作按钮,不仅是在顶部没有空间的情况下(我隐藏了顶部操作栏,只有选项卡在那里)。顶部和底部栏应该是独立的。
图中底栏有:http://goo.gl/pFvHI
谢谢。
【问题讨论】:
就其本身而言,无法拆分操作栏,因为 android 会根据屏幕尺寸将其作为个案处理。 看这里:Have the split action bar..
大多数具有这种行为的应用程序都有在屏幕上显示的自定义视图。您可以创建一个具有添加按钮和隐藏或显示视图的方法的 LinearLayout,并且只需在这些视图上设置一个点击侦听器。甚至谷歌在他们的一些应用上就是这样做的。
【讨论】:
在您的 AndroidManifest 中使用:
<activity
android:name=".MyActivity"
android:uiOptions="splitActionBarWhenNarrow"
android:label="@string/app_name" />
这里的关键是uiOptions="splitActionBarWhenNarrow"。
【讨论】:
是的,可以使用SHOW_AS_ACTION_IF_ROOM 来创建Options Menu 菜单项。
喜欢这个
@Override
public boolean onCreateOptionsMenu(Menu menu) {
int actionRoom = MenuItem.SHOW_AS_ACTION_IF_ROOM;
menu.add(Menu.NONE, ACCOUNTS_MENU, Menu.NONE, "Search")
.setIcon(R.drawable.ic_menu_account_list)
.setAlphabeticShortcut('a')
.setShowAsAction( accountRoom );
}
【讨论】: