操作栏如何检测菜单按钮必须显示的位置

时间:2012-07-06 07:54:25

标签: android menu android-actionbar

如果使用操作栏的应用程序在平板电脑上运行 - 右上角有菜单按钮。但是在智能手机上这个按钮没有显示,因为我认为设备有一个硬件菜单按钮。 我的代码中需要类似的行为才能在平板电脑上显示我的自定义菜单按钮,而不是在智能手机上显示它?是真的? 我不想使用行动栏

由于

1 个答案:

答案 0 :(得分:0)

您可以检查设备是平板电脑还是平板电脑,并且仅在设备是平板电脑时才会为选项菜单充气。

假设您有一个方法isTablet(),如果设备是平板电脑,则返回true。 然后,只有当onCreateOptionMenu()返回true时,您才需要覆盖isTablet()并对菜单进行充气。

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    if(isTablet()){
        menuInflater.inflate(R.menu.menu_tablet, menu);
        return super.onCreateOptionsMenu(menu);
    }else{
        // do nothing
        return true
    }    
}

如何确定设备是否已上市或手机,您需要挖掘这篇文章:http://developer.android.com/guide/practices/screens_support.html