我在菜单中创建了一个项目activity2
(res>menu>main.xml
),我希望当用户点击activity2
时,activity1
会隐藏(这是已经开始运行)和activity2
将显示。
此外,当用户按下后,activity2
将隐藏,activity1
将对用户可见。
这该怎么做?请解释。
答案 0 :(得分:1)
您可以在onOptionsItemSelected
中获取菜单项的onclick事件。
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.activity2:
// start your activity2
startActivity(new Intent(MainActivity.this, Activity2.class));
// no need to finish MainActivity
default:
return super.onOptionsItemSelected(item);
}
}
MainActivity
没有被销毁,所以如果您按下Activity2
,则会显示MainActivity
。答案 1 :(得分:0)
您应该使用menuItem.setVisible(false);
来隐藏menuItem以保持其可见性,
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
MenuItem menuItem = menu.findItem(R.id.icon_websearch);//your icon
menuItem.setVisible(false);
return super.onPrepareOptionsMenu(menu);
}
答案 2 :(得分:0)
您需要在Activity中使用onPrepareOptionMenu方法,您可以使用setVisible设置可见性。你可以参考下面的代码作为例子:
public boolean onPrepareOptionsMenu(Menu menu)
{
MenuItem register = menu.findItem(R.id.menuregistrar);
if(userRegistered)
{
register.setVisible(false);
}
else
{
register.setVisible(true);
}
return true;
}