Java 为什么布尔变量在false上不显示任何结果?
我已尝试在我的Java 为什么布尔变量在false上不显示任何结果?,java,android,variables,boolean,Java,Android,Variables,Boolean,我已尝试在我的活动中使用布尔变量。如果true和false,我尝试使用boolean值进行检查。但我只得到了false的结果 private boolean editMode; if(editMode) //false { delete.setVisibility(View.INVISIBLE); Toast.makeText(getApplicationContext(),"Edit mode",Toast.LENGTH_LONG).show()
活动中使用布尔
变量。如果true
和false
,我尝试使用boolean
值进行检查。但我只得到了false
的结果
private boolean editMode;
if(editMode) //false
{
delete.setVisibility(View.INVISIBLE);
Toast.makeText(getApplicationContext(),"Edit mode",Toast.LENGTH_LONG).show();
Log.i("Log","Edit mode");
}
else //true
{
Log.i("Log1","Save mode");
Toast.makeText(getApplicationContext(),"Save mode",Toast.LENGTH_LONG).show();
}
每次我得到“保存模式”。如何检查true
和false
我想用两种模式显示一个活动
。如果是“保存模式”,我想隐藏一个按钮。如果是“编辑模式”,则按钮应可见
如果单击我的事件,我需要布尔值
变量true
。因此,我尝试将布尔值
变量作为真值
传递
eventView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
i = new Intent(getActivity(),AddEventActivity.class);
editMode = true;
i.putExtra("EditMode",editMode);
startActivity(i);
}
});
所以现在每次它显示true
值时,即“编辑模式”。我只希望在单击“事件视图”时将其设置为“编辑模式”。我有“事件”和“添加”按钮可转到“添加事件”活动。如果使用“添加”按钮,则应为“保存模式”,如果使用“事件视图”,则应为“编辑模式”
如何做到这一点 否定你的第一次检查,你应该表现良好
if(!editMode)//false
{
delete.setVisibility(View.INVISIBLE);
Toast.makeText(getApplicationContext(),"Edit mode",Toast.LENGTH_LONG).show();
Log.i("Log","Edit mode");
}
else//true
{
Log.i("Log1","Save mode");
Toast.makeText(getApplicationContext(),"Save mode",Toast.LENGTH_LONG).show();
}
这意味着如果不是编辑模式。由于editMode是一个布尔值(一种基本类型),因此它不会以null开头。这意味着它需要一个默认值,在这种情况下,该值为false。您的代码显示如果editMode为true,则记录“editMode”,否则记录“Save mode您声明变量editMode
,但您尚未为其分配任何内容,因此它始终为true。若要从putExtra()
获取数据,您必须在启动的活动中调用Intent.get\u Extra()
在您的添加事件活动
中,写下以下内容:
private boolean editMode;
Intent i = getIntent();
editMode = i.getBooleanExtra("EditMode", true);
if(editMode)
....
如果您使用的是保存模式,则变量为false…布尔值的默认值为false。我是否正确?@Sami KuhmonenIf(editMode)//false
错误!这意味着:If(editMode==true)//false
谢谢您的回答。请检查我编辑的问题。@AEMORALES1需要查看正在执行if检查的方法的定义。对不起,是哪种方法?@AEMORALES1如果正在执行if else,请查看@NoImNotNull的答案。我非常确定这将回答您的问题。是的,我已经完成了。但我正在获取always true。如果我单击“添加”按钮,我希望它为false。而不是事件。您的代码显示您在单击时将其设置为true。如果您希望false,请在“添加”按钮上将其设置为false