EditText等于,显示活动?

时间:2015-05-01 12:48:57

标签: android string

我想创建一个应用程序,如果你在editText字段中输入它的名字,可以提供有关草药的信息,该怎么做?

我有一个文本字段,你输入让我们说“玫瑰”,然后你按开始,我希望程序给你活动,你可以在那里找到关于玫瑰的一切。

这就是我现在所拥有的,但该程序并没有真正对它做出反应。

EditText edit = (EditText) findViewById(R.id.editText);
if (edit.getText().toString().equals("Rose")) {
    Intent intent = new Intent(this, roseinformation.class);
    startActivity(intent);
}

也许我应该按下按钮?有点像......:如果edittext等于rose,而id是按钮,则启动roseinformation活动?

public void onClick(View v)  {
    switch (v.getId()) {
        case R.id.button:
            Intent intent = new Intent(this, roseinformation.class);
            startActivity(intent);
            break;
    }
}

3 个答案:

答案 0 :(得分:1)

正如其他人在你提问的评论中所说的那样,将逻辑移到按钮监听器中:

public void onClick(View v)  {
    switch (v.getId()) {
        case R.id.button:
            if (edit.getText().toString().equals("Rose")) {
                Intent intent = new Intent(this, roseinformation.class);
                startActivity(intent);
            }
        break;
    }
}

答案 1 :(得分:1)

实施Buttton点击监听器,然后点击EditText点击Button值:

button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
           if (edit.getText().toString().equals("Rose"))
           {
               Intent intent = new Intent(this, roseinformation.class);
               startActivity(intent);
           }
           else {
             // check rest condition using else if ladder.
           }
        }
});

答案 2 :(得分:1)

您需要实现按钮单击侦听器。

我认为你很困惑,因为你不知道如何从EditText获得价值。所以要克服它,你需要在声明部分EditText之前创建一个onCreate()变量全局。

 EditText editText;

现在您可以使用onCreate()方法初始化它。现在点击按钮,只需检查

 public void onClick(View v)  {
 switch (v.getId()) {
    case R.id.button:
        if (editText.getText().toString().equals("Rose"))
        {
           Intent intent = new Intent(this, roseinformation.class);
           startActivity(intent);
        }
        else {
         // do your stuff
        }
        break;
}
}