/禁用的项目,我可以在此通过ContextMenu禁用的项目:在onCreateContextMenu,如果我有什么如何启用的ContextMenu
menu.getItem(1).setEnabled(false);
,但后来想用同样的活动中设置为true?我怎么能在运行时做到这一点?
编辑:
// Create context menu
@Override
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
// TODO Auto-generated method stub
super.onCreateContextMenu(menu, v, menuInfo);
menu.setHeaderTitle("Options for this image"); // Title for the menu
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.activity_1_menu, menu);
menu.getItem(1).setEnabled(false);
}
这就是我要改变的项目,以使:
// Handle return values from different activities
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == Activity.RESULT_OK) {
if (requestCode == 1) {
// Get value from intent
String imageId = data.getExtras().getString("imageId");
// Show full screen image
Bitmap bitmap = BitmapFactory.decodeFile(imageId);
imageView.setImageBitmap(bitmap);
}
else if(requestCode == 2) {
String contact1 = data.getExtras().getString("contactName");
String contact2 = data.getExtras().getString("test");
Toast.makeText(Activity_1.this, "" + "Value from activity 3: " + contact1 + " " + contact2, Toast.LENGTH_SHORT).show();
CHANGE MENU ITEM 1 TO ENABLE HERE!!!!
}
}
}
}
感谢您的回复!我已经多次阅读过这个页面,但是我没有得到它,我应该放置onPrepareOptionsMenu方法来让它工作!?我想这是要求菜单对象 – 2013-02-26 10:43:30
onPrepareOptionsMenu()可以放置在您的活动中的任何位置,它将自动调用,就像onCreateContextMenu在上下文选项即将显示时自动调用一样。 – Antrromet 2013-02-26 11:17:19
是的,但是如何在运行时更改要启用的项目? – 2013-02-26 11:20:52