1. ホーム
  2. android

[解決済み] パラメータを渡してIntentを開始するには?

2022-09-21 22:31:01

質問

ListActivityのコンストラクタに変数を渡したいのですが。

このコードでアクティビティを開始します。

startActivity(new Intent (this, viewContacts.class));

私は同様のコードを使用したいのですが、コンストラクタに2つの文字列を渡します。どのように可能ですか?

どのように解決するのですか?

パラメータを渡すために、新しいインテントを作成し、パラメータマップを配置します。

Intent myIntent = new Intent(this, NewActivityClassName.class);
myIntent.putExtra("firstKeyName","FirstKeyValue");
myIntent.putExtra("secondKeyName","SecondKeyValue");
startActivity(myIntent);

開始したアクティビティ内でパラメータの値を取得するためには、アクティビティ内で get[type]Extra() を同じインテント上で呼び出す必要があります。

// getIntent() is a method from the started activity
Intent myIntent = getIntent(); // gets the previously created intent
String firstKeyName = myIntent.getStringExtra("firstKeyName"); // will return "FirstKeyValue"
String secondKeyName= myIntent.getStringExtra("secondKeyName"); // will return "SecondKeyValue"

もしパラメータがint型であれば getIntExtra() などとします。 これで、通常のようにパラメータを使用することができます。