現在のものから起動されているアクティビティにバンドルを渡す正しい方法は何ですか? 共有プロパティ?
5 に答える
いくつかのオプションがあります:
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 を使用しました。
インテントからバンドルを使用できます。
Bundle extras = myIntent.getExtras();
extras.put*(info);
またはバンドル全体:
myIntent.putExtras(myBundle);
これはあなたが探しているものですか?
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);
}