Java 如何在android编程中使用操作项作为按钮?
我的页面上方有一个菜单,它有一个动作项。像这样: 我为它设置了Java 如何在android编程中使用操作项作为按钮?,java,android,Java,Android,我的页面上方有一个菜单,它有一个动作项。像这样: 我为它设置了app:showAsAction=“always” 我的页面中也有不可见的视图(在UI中) 我想,如果我点击它,我的不可见视图就会出现。所以我为它设置了一个布尔参数。 我的布尔值设置为true,但我的对象根本不显示。我怎样才能修好它 这是我的密码: public static boolean myBoolean=false; protected void onCreate(Bundle savedInstanceS
app:showAsAction=“always”
我的页面中也有不可见的视图(在UI中)
我想,如果我点击它,我的不可见视图就会出现。所以我为它设置了一个布尔参数。
我的布尔值设置为true,但我的对象根本不显示。我怎样才能修好它
这是我的密码:
public static boolean myBoolean=false;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//this if doesn't check after change parameter
if(myBoolean)
findViewById(R.id.checkBox).setVisibility(View.VISIBLE);
}
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
switch (id) {
case R.id.action_setting: {
myBoolean=true;
return true;
}}}
我从中得到的是,你想显示一个基于点击操作栏中某个菜单项的视图,对吗?。如果这是真的,那么就这样做
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle item selection
switch (item.getItemId()) {
case R.id.action_setting:
if(myBoolean){
findViewById(R.id.checkBox).setVisibility(View.GONE);
myBoolean = false;
}else{
findViewById(R.id.checkBox).setVisibility(View.VISIBLE);
myBoolean = true;
}
return true;
default:
return super.onOptionsItemSelected(item);
}
}
您不能在代码的前面决定可见性,因为单击可能只发生在onCreate()之后。没错,谢谢。但当我在onCreate()中的按钮onclick中设置myBoolean true时,它会一直检查(我的setVisible停留在onCreate中,在onclick按钮之外),这是为什么?