在较低的Android版本中获取MenuItem

时间:2013-08-28 09:17:09

标签: android exception menu nullpointerexception menuitem

我想在较低的Android版本中获得MenuItem。此代码在Android 4.0.3中运行良好:

_menu.findItem(R.id.menu_item).setVisible(true);

但该应用程序在Android 2.3.6中崩溃。它抛出NullPointerException。

如何在较低的Android版本中使用它?

1 个答案:

答案 0 :(得分:0)

我的代码适用于8的minSdkVersion,并且没有问题

对于片段:

@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {

super.onCreateOptionsMenu(menu, inflater);

        inflater.inflate(R.menu.menu_result_search, menu);

        MenuItem saveItem = menu.findItem(R.id.save_item);      
        saveItem.setVisible(false);

}

活动:

@Override
    public boolean onCreateOptionsMenu(Menu menu) {
        super.onCreateOptionsMenu(menu);
        MenuInflater inflater = getSupportMenuInflater();
        inflater.inflate(R.menu.menu_detail, menu);

        MenuItem upIconActionBar = menu.findItem(R.id.menu_up);
        upIconActionBar.setVisible(false);
    }