我想在我的应用中创建一个单独的页面(布局和子活动),您可以通过单击菜单按钮来访问该页面。我希望它能够在您再次单击菜单按钮时切换到MainActivity和activity_mail.xml布局。
我在这段代码上取得了一定程度的成功:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
setContentView(R.layout.settings);
return true;
}
这成功切换到settings.xml布局。但是,当再次按下菜单按钮时,如何返回activity_main.xml布局?
答案 0 :(得分:1)
这不是为optionsMenu
创建的,但是。有很多可能的方法可以做到这一点。一种可能的方法是创建一个布尔字段变量。
private boolean isInMailLayout = true;
[...]
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
if(isInMainLayout){
setContentView(R.layout.settings);
isInMailLayout = false;
}
else {
setContentView(activity_mail.xml);
isInMailLayout = true;
}
return true;
}
optionsMenu
:optionsMenu应在overflow drop down list(如果您使用ActionBar)或grid at the bottom of the phone(如果您不使用ActionBar)中显示菜单。
另一方面,您不想显示菜单,而是更改布局。您可能希望为此启动一个新的活动。