editText框无法正常工作。 Android的

时间:2013-11-20 11:47:03

标签: android android-edittext

我正在尝试从edittext框中获取值,并且在单击按钮时,我想比较edittext框内的文本是否与某个值匹配。如果是,则应调用新意图。如果不是,则应显示错误。单击按钮后,这是我的代码...

     if(v.getId() == R.id.button1){

        id = et1.getText().toString();
        Toast toast = Toast.makeText(this, "Value of id is: " + id, Toast.LENGTH_SHORT);
        toast.show();

        if(id == "abc"){
            Intent i= new Intent(Slogin.this, Sales.class);
            startActivity(i);
        }else{
            Toast toast = Toast.makeText(this, "Wrong id pass",                                                                            Toast.LENGTH_SHORT);
            toast.show();
        }

现在的问题是,即使我输入“abc”(没有双逗号),它仍然显示错误“错误的id传递”。虽然Toast清楚地表明我已输入abd并且字符串id现在保持值“abc”。需要帮助......

2 个答案:

答案 0 :(得分:6)

尝试此操作..如果id int 使用此id == 5。但是ID是字符串,您应该使用id.equals("abc")

if(id.equals("abc")){           //Correction is here
            Intent i= new Intent(Slogin.this, Sales.class);
            startActivity(i);
        }else{
            Toast toast = Toast.makeText(this, "Wrong id pass",                                                                            Toast.LENGTH_SHORT);
            toast.show();
        }

==总是只比较两个引用(对于非基元,即),即它测试两个操作数是否引用同一个对象。

但是,可以覆盖equals方法 - 因此两个不同的对象仍然可以相等......

答案 1 :(得分:3)

使用

if(id.equals("abc"))

代替

 if(id == "abc")