2

EditText ボックスから取得した次のインテントに文字列の値を渡そうとしています。

final EditText et1 = (EditText) findViewById(R.id.editText1); 
final String userid = et1.getText().toString();

final EditText et2 = (EditText) findViewById(R.id.editText2);
final String pass = et2.getText().toString();

b1.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {               
        Intent i= new Intent(Main.this, Main1.class);
        i.putExtra("userid",userid);
        i.putExtra("pass",pass);
        startActivity(i);
    }
});

Main1.class には、次のコードがあります...

Intent i= getIntent();
String userid = i.getStringExtra("userid");
String pass = i.getStringExtra("pass");

しかし、エラーが発生します。logcat を確認したところ、エラーは次の行にあることがわかりました。

String userid = i.getStringExtra("userid");

本当の問題が何であるかはわかりませんが、文字列を間違って受信しようとしていると思います。私は何か間違ったことをしていますか?インテントを介して文字列を送受信する正しい方法は何ですか? 他の方法があれば、私を助けてください。私のクラスはどちらも Activity を拡張し、実装しOnClickListenerます。

4

3 に答える 3