ActionBarSherlock - 菜单中的操作项重叠'三点按钮'

时间:2013-08-20 10:35:00

标签: actionbarsherlock overlap

今天,我正在打一个非常难看的小虫。 我想将一些项目放入底部菜单(不使用制表符),但我希望这些项目只定义“标题”而不是“图标”。一切都适用于Android< = ICS的设备。菜单项的宽度是正确计算的(我想对前三项使用“always”属性,其他使用“ifRoom”)。 当我在JB设备上启动应用程序时,最后一个菜单项被“三个点按钮”覆盖,隐藏了其他四个菜单项。

我在HW Ascend G300上测试了这个(ICS,hw菜单按钮被禁用),结果是正确的。在HTC X(JB)上,结果不正确。

Ps:当我设置第一个菜单项(action_menu_map)的图标时,一切正常(我当然不想设置它)。

<menu xmlns:android="http://schemas.android.com/apk/res/android" >
     <item 
         android:id="@+id/action_menu_map"
         android:showAsAction="always"
         android:title="@string/ab_map"/>
     <item 
         android:id="@+id/action_menu_list"
         android:title="@string/ab_list"
         android:showAsAction="always"/>
     <item 
         android:id="@+id/action_menu_routes"
         android:title="@string/ab_routes"
         android:showAsAction="always"/>
     <item 
         android:id="@+id/action_menu_call"
         android:title="@string/ab_call"
         android:icon="@drawable/call_icon"
         android:showAsAction="ifRoom"/>
     <item 
         android:id="@+id/action_menu_report_event"
         android:title="@string/ab_report_event"
         android:icon="@drawable/message_icon"
         android:showAsAction="ifRoom"/>
     <item 
         android:id="@+id/action_menu_settings"
         android:title="@string/ab_settings"
         android:showAsAction="ifRoom"/>
     <item 
         android:id="@+id/action_menu_info"
         android:title="@string/ab_info"
         android:showAsAction="ifRoom"/>
</menu>

谢谢;)

2 个答案:

答案 0 :(得分:0)

我有三个点问题出现在底部,它只出现在HTC设备的底部(对不起,我可能错了,但这是我发现的)。所以,最后我更改了API级别为18的Project Build Target,或者在我的清单文件中设置了android:targetSdkVersion =“18”,三个按钮消失了。

答案 1 :(得分:0)

使用它  SHOW_AS_ACTION_IF_ROOM

使用此功能,如果您的操作栏没有足够的空间来容纳更多物品,那么它将进入垂直3点。

e.g。

menu.add("More").setOnMenuItemClickListener(this.DebugButtonHandler)
    .setIcon(R.drawable.info).setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);