问题在哪里谁可以帮助我我的if语句不工作,因为我希望它已经检查了我的edittext在android中可见或不可见。
现在我要检查一下条件是,
如果我的edittext是可见的意味着我如何插入数据。如果我的edittext是走了意味着我怎么能插入到另一个数据。这是我的代码,如果我必须检查复选框意味着edittext是不可见的,否则edittext是可见的:
Button b;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.selling1);
b=(Button) findViewById(R.id.button1);
b.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
DecimalFormat tw = new DecimalFormat("0.00");
EditText a= (EditText)findViewById(R.id.y);
EditText b= (EditText)findViewById(R.id.a);
Float x=Float.parseFloat(a.getText().toString());
Float y=Float.parseFloat(b.getText().toString());
if((a.getText().toString().equals(""))){
Toast t= Toast.makeText(getApplicationContext(), "10000 is there", Toast.LENGTH_LONG);
t.setGravity(Gravity.CENTER, 02, 10);
t.show();
}else{
Float z=(x*y)/(100+y);
Float p=x-z;
EditText c= (EditText)findViewById(R.id.c);
c.setText(tw.format(z));
EditText d= (EditText)findViewById(R.id.e);
d.setText(tw.format(p));
}
打印a.getText().toString()
,看看它返回什么,如果它是空的,试试这个
if("".equals(a.getText().toString())){
Toast t= Toast.makeText(getApplicationContext(), "10000 is there", Toast.LENGTH_LONG);
t.setGravity(Gravity.CENTER, 02, 10);
t.show();
}
如果你想检查EditText
的可见性,不要比较它的文本。用这个代替:
if (a.getVisibility() == View.VISIBLE){
//Perform your action of inserting
}
希望你明白为什么选择这个。比如说,用户在EditText
中输入了一些东西。然后你使EditText
隐形。目前它的文本还没有被清除。所以你还是会得到那个文本