android menu点击效果,android – 单击时更改MenuItem可见性

作者分享了如何在Android应用中隐藏和显示MenuItem的问题,当用户点击'编辑'按钮时隐藏'铅笔'图标并显示'检查',反之亦然。然而,发现选项菜单在选择时并未实时更新项目状态。本文将展示修复此问题的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我试图隐藏一个MenuItem,并在选择第一个时使另一个可见.

每个的ID是:

pencil: R.id.button_routines_edit

check mark: R.id.button_routines_edit_done

这里有相关代码:

private boolean isEditing = false;

@Override

public boolean onOptionsItemSelected(MenuItem item) {

// Handle item selection

switch (item.getItemId()) {

case R.id.button_routines_edit:

// hide pencil icon, show checkmark

isEditing = true;

return true;

case R.id.button_routines_edit_done:

// show pencil icon, done editing

isEditing = false;

return true;

default:

return super.onOptionsItemSelected(item);

}

}

@Override

public boolean onPrepareOptionsMenu(Menu menu) {

super.onPrepareOptionsMenu(menu);

// hide pencil when editing and show check mark

menu.findItem(R.id.button_routines_edit).setVisible(!isEditing);

menu.findItem(R.id.button_routines_edit_done).setVisible(isEditing);

return true;

}

我的问题是:

选项菜单在选择时不会重新绘制项目.换句话说,第一个未隐藏,第二个未显示.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值