別の活動からのデータを渡し、その後の印刷

ブレット:

私が午前問題は、それが入力された実際のユーザー名を第二のアクティビティにヌルをプリントアウトしていないということです。データが正しく二アクティビティに渡されていますか?第二の活動は、多くのコードを必要としていますか?プログラミングで申し訳ありませんが、最高ではありません。

私は私のメインクラスでこのコードを持っています

if (username.getText().toString().equals("batman") &&
password.getText().toString().equals("Joker")) { 
Toast.makeText(MainActivity.this, "Username and 
password is correct", Toast.LENGTH_SHORT).show();
Intent intent = new Intent("com.example.*******.loginpage.User");
intent.putExtra("username",String.valueOf(username));
startActivity(new Intent(MainActivity.this, User.class));

これは私の第二のクラス内のコードです。

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_user);

Intent intent = getIntent();
String username = getIntent().getStringExtra("username");

TextView textView = (TextView) findViewById(R.id.textView4);
textView.setText("Welcome" + " " + username );
Randyka Yudhistira:

問題は、あなたの最初のクラスで自分の意思であります

Intent intent = new Intent("com.example.*******.loginpage.User"); <-- have created an intent
intent.putExtra("username",String.valueOf(username));
startActivity(new Intent(MainActivity.this, User.class)); <-- but using new Intent

あなたは、意思を作成しているが、あなたは新しい意思を渡します。あなたの作成したが、代わりに新しいテントを渡すの意図を使用します。

Intent intent = new Intent(MainActivity.this, User.class);
intent.putExtra("username",String.valueOf(username));
startActivity(intent);

EDIT

代わりに使用してString.valueOf(username)、あなたが使用する必要がありますusername.getText()ので、String.valueOf(username)Stringにあなたのオブジェクトを変換する方法です。

Intent intent = new Intent(MainActivity.this, User.class);
intent.putExtra("username",username.getText());
startActivity(intent);

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=225526&siteId=1