正确的文本输入到下一个活动

时间:2014-02-06 08:29:40

标签: java android input android-activity passwords

我是一个全新的程序员,我希望将一个测验应用程序作为我的第一个应用程序。只有具有正确答案的问题才会将用户发送到下一个活动。我想出了如何编辑按钮,但我不确定要添加到JAVA文件或XML文件中的哪些内容将允许打开下一个活动(屏幕)。

到目前为止这是我的布局。我已经决定输入密码,但问题的答案将存储在应用程序中。不确定这是否是正确的方法?

`

<TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Question" />

<EditText
    android:id="@+id/editText1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/textView1"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="78dp"
    android:ems="10"
    android:inputType="textPassword" />

 <Button
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:layout_below="@+id/textView1"
     android:layout_centerHorizontal="true"
     android:text="Answer" />

`

提前感谢您提供的任何帮助!

@kanwaljit Sngh

我收到多个错误,例如“按钮无法解析为某个类型”和“R无法解析为变量”这些是什么意思?

`import android.os.Bundle; import android.app.Activity; import android.view.Menu;

公共类Startscreen扩展了Activity {

  EditText editText1 = (EditText) findViewById(R.id.editText1);
    Button btn = (Button) findViewById(R.id.button);
    btn.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub

                String answer = editText1.getText().toString().trim();
                if (answer.equals("desired answer")) {
                    Intent i = new Intent(getApplicationContext(),
                            CorrectAnswerActivity.class);
                    startActivity(i);
                } else {
                    Intent i = new Intent(getApplicationContext(),
                            WrongAnswerActivity.class);
                    startActivity(i);
                }
            }

    });

`

2 个答案:

答案 0 :(得分:1)

  1. Get the value of edittext

  2. 使用所需答案进行检查

  3. 如果为true,则重定向到下一个活动

  4. 例如:

      if(editText1.getText().toString().equalsIgnoreCase("desiredanswer")
      {
                   startActivity(new Intent(this,nextActivity.class));
      }
      else
      {
                    Toast.makeText(this,"Wrong answer",2000).show();
      }
    

答案 1 :(得分:0)

    EditText editText1 = (EditText) findViewById(R.id.editText1);
    Button btn = (Button) findViewById(R.id.button);
    btn.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub

                String answer = editText1.getText().toString().trim();
                if (answer.equals("desired answer")) {
                    Intent i = new Intent(getApplicationContext(),
                            CorrectAnswerActivity.class);
                    startActivity(i);
                } else {
                    Intent i = new Intent(getApplicationContext(),
                            WrongAnswerActivity.class);
                    startActivity(i);
                }
            }

    });

并编写新的两个活动CorrectAnswerActivty和WrongAnswerActivity 并执行在这些活动中显示的内容 并将以下行添加到button标记 -

中的xml文件中
android:id="@+id/button"