185

現在のものから起動されているアクティビティにバンドルを渡す正しい方法は何ですか? 共有プロパティ?

4

5 に答える 5

457

いくつかのオプションがあります:

1)インテントからバンドルを使用します。

Intent mIntent = new Intent(this, Example.class);
Bundle extras = mIntent.getExtras();
extras.putString(key, value);  

2) 新しいバンドルを作成する

Intent mIntent = new Intent(this, Example.class);
Bundle mBundle = new Bundle();
mBundle.putString(key, value);
mIntent.putExtras(mBundle);

3) Intent のputExtra()ショートカット メソッドを使用する

Intent mIntent = new Intent(this, Example.class);
mIntent.putExtra(key, value);


次に、起動されたアクティビティで、次の方法でそれらを読み取ります。

String value = getIntent().getExtras().getString(key)

注:バンドルには、すべてのプリミティブ型、Parcelable、および Serializable の「get」および「put」メソッドがあります。デモンストレーションの目的で Strings を使用しました。

于 2009-05-04T09:23:57.347 に答える
21

インテントからバンドルを使用できます。

Bundle extras = myIntent.getExtras();
extras.put*(info);

またはバンドル全体:

myIntent.putExtras(myBundle);

これはあなたが探しているものですか?

于 2009-04-20T16:25:29.130 に答える
17

Androidで1つのアクティビティからアクティビティにデータを渡す

インテントには、アクションとオプションの追加データが含まれます。インテントputExtra()メソッドを使用して、データを他のアクティビティに渡すことができます。データは extras および are として渡されますkey/value pairs。キーは常に文字列です。値として、プリミティブ データ型 int、float、chars などを使用できます。またParceable and Serializable、あるアクティビティから別のアクティビティにオブジェクトを渡すこともできます。

Intent intent = new Intent(context, YourActivity.class);
intent.putExtra(KEY, <your value here>);
startActivity(intent);

Android アクティビティからのバンドル データの取得

getData()Intent オブジェクトのメソッドを使用して情報を取得できます 。Intentオブジェクトは、メソッドを介して取得できますgetIntent()

 Intent intent = getIntent();
  if (null != intent) { //Null Checking
    String StrData= intent.getStringExtra(KEY);
    int NoOfData = intent.getIntExtra(KEY, defaultValue);
    boolean booleanData = intent.getBooleanExtra(KEY, defaultValue);
    char charData = intent.getCharExtra(KEY, defaultValue); 
  }
于 2015-03-19T05:39:21.237 に答える