是否有可能使行动“无法点击”?

时间:2013-01-23 16:44:13

标签: android android-actionbar actionbarsherlock

我在我的API级别10的应用程序中使用了ActionBarSherlock库。我想知道是否可以在单击它时没有响应的Action图标。

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@+id/mainTopBluetoothState"
        android:icon="@drawable/bt_not_connected"
        android:orderInCategory="0"
        android:clickable="false"
        android:showAsAction="ifRoom" />

    <item android:id="@+id/mainTopAppState"
        android:title="App State"
        android:orderInCategory="1"
        android:showAsAction="ifRoom" />

</menu>

android:clickable="false"不会产生错误,但在应用程序运行时按下Action仍然会做出反应。

3 个答案:

答案 0 :(得分:12)

答案 1 :(得分:3)

mymenu.getItem(0//item number).setEnabled(false);

当你想要setClickable时,只需写下来......

mymenu.getItem(0).setEnabled(true);

答案 2 :(得分:1)

您可以在onPrepareOptionsMenu(Menu menu)

中执行此操作
@Override
public boolean onPrepareOptionsMenu (Menu menu){
    super.onPrepareOptionsMenu(menu);

        MenuItem myItem = menu.findItem(R.id.myId);
        myItem.setEnabled(false);

    return true;  
}

documentation建议您这样做。

  

准备要显示的屏幕标准选项菜单。这是   每次显示菜单时,都会在菜单显示之前调用。 你可以   使用此方法有效启用/禁用项目或其他方式   动态修改内容。