0

问题出在哪里任何人都可以帮助我我的if语句不起作用,因为我希望它检查我的edittext在android中是可见还是不可见。

现在我必须检查条件是。,

如果我的编辑文本可见意味着我如何插入数据。如果我的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));
    }
4

2 回答 2

0

print a.getText().toString() and see what it is returning, if it is empty try this

    if("".equals(a.getText().toString())){
    Toast t= Toast.makeText(getApplicationContext(), "10000 is there", Toast.LENGTH_LONG);      
t.setGravity(Gravity.CENTER, 02, 10);
 t.show();
    }
于 2013-05-07T11:26:50.600 回答
0

如果你想检查它的可见性,EditText不要比较它的文本。请改为:

if (a.getVisibility() == View.VISIBLE){
    //Perform your action of inserting
}

希望你明白为什么选择这个。说,用户在EditText. 然后你EditText让它不可见。此时它的文本没有被清除。所以你仍然得到那个文本。

希望这可以帮助。

于 2013-05-07T12:13:03.510 回答