私はどのアクティビティでもアクセスできる静的フィールドを持つクラスを作成するグローバルな静的手法について読んでいます。 ArrayList<Drawables>
やHashMapsのような大きなデータセットを渡す方法はありますか? 私はSerializableについても読んだことがありますが、それをどのように使用するか分かりません。すべてのサンプルコードは大歓迎です...あるアクティビティから別のアクティビティにオブジェクトを渡す最も良い方法
答えて
Intent intent = new Intent(getBaseContext(), NextActivity.class);
intent.putExtra("arraylist", new ArrayList<String>());
あなたのArrayListのインスタンスFriend.classのため、あなたが自分で作成した別のオブジェクトが含まれている場合は、あなたが実装することができますシリアライズ可能なFriend.class、次に:
Intent intent = new Intent(getBaseContext(), NextActivity.class);
intent.putExtra("friendlist", new ArrayList<Friend>());
そしてNextActivity.classでそれを受信するために:
Bundle extras = getIntent().getExtras();
if(extras != null){
ArrayList<Friend> friends = extras.getSerializable("friendlist");
}
まあ、代わりに空のArrayListを渡すので、あなたはArrayListの値を挿入し、それに合格する必要がありますが、あなたのアイデアを得ます。
Activityと呼ぶために作成したIntentオブジェクトに情報をパックする必要があります。エクストラBundleオブジェクトがあります。
SerializableインターフェイスまたはAndroid固有のParcelableインターフェイスのいずれかを使用して、プリミティブでないオブジェクトを渡すことができます。
Androidデベロッパーサイトでは、自分のチュートリアルからhandy Notepad Tutorial with an example of putting information into the intent.
があります
super.onListItemClick(l, v, position, id);
Cursor c = mNotesCursor;
c.moveToPosition(position);
Intent i = new Intent(this, NoteEdit.class);
i.putExtra(NotesDbAdapter.KEY_ROWID, id);
i.putExtra(NotesDbAdapter.KEY_TITLE, c.getString(
c.getColumnIndexOrThrow(NotesDbAdapter.KEY_TITLE)));
i.putExtra(NotesDbAdapter.KEY_BODY, c.getString(
c.getColumnIndexOrThrow(NotesDbAdapter.KEY_BODY)));
startActivityForResult(i, ACTIVITY_EDIT);
サンプルコード? –
インテント、パーセルブル、シリアライゼーションなどを気にする必要がない同じアプリケーション(同じJVMを話す)にいれば、すべてのオブジェクトが同じヒープにあり、シングルトン、roboguiceのようなDIコンテナまたはあなたが合って見えるものは何でも。
データを他のアプリケーションにプッシュする場合は、JSON/XMLのシリアル化されたものとして渡すことをお勧めします。 HashMapを渡す
は、すべてのコレクションにはシリアライズ(SP?)彼らはHashMapを挿入するために意図
使用putExtra(文字列のキー、SerializableをOBJ)内のエクストラとして渡すことができるインタフェース手段と上を実装するオブジェクト、非常に単純ですgetIntent()。getSerializableExtra(String key)を使うと、戻り値をHashMapとしてキャストする必要があります。
- 1. Androidでは、あるアクティビティから別のアクティビティにオリジンオブジェクト(NOT COPY)を渡す方法
- 2. あるアクティビティから別のアクティビティに値を渡す
- 3. Android:onClickメソッドのあるアクティビティから別のアクティビティにオブジェクトを渡してAsyncTaskクラスに使用する方法
- 4. あるアクティビティから別のアクティビティへ画像を渡す
- 5. あるアクティビティから別のアクティビティへデータを渡す
- 6. 2つの異なるアクティビティから別のアクティビティにデータを渡す方法
- 7. アンドロイド上のあるアクティビティから別のアクティビティにオブジェクトを渡す必要があるのはなぜですか?
- 8. 1つのアクティビティから別のアクティビティに複数の変数を渡す方法
- 9. 複雑なライブラリクラスオブジェクトを1つのアクティビティから別のアクティビティに渡す方法
- 10. アクティビティのデータをAndroidの別のアクティビティに渡す方法
- 11. Android:パーセルを使用してあるアクティビティから別のアクティビティにオブジェクトを渡すのが難しい場合
- 12. 1つのアクティビティから別のアクティビティに値を渡すには
- 13. ViewPagerオブジェクトを別のアクティビティに渡す
- 14. 高解像度画像をあるアクティビティから別のアクティビティに渡す
- 15. キューからアクティビティを更新する最良の方法
- 16. androidのタブレイアウトで1つのアクティビティから別のアクティビティへデータを渡す方法
- 17. アンドロイドでオブジェクトの参照をあるアクティビティから別のアクティビティに渡すことはできますか?
- 18. アンドロイド - 1つのアクティビティから別のアクティビティにトーストを渡す
- 19. 1つのアクティビティから別のアクティビティにリダイレクトする方法
- 20. 別のスレッドクラスからのデータをAndroidのアクティビティに渡す方法
- 21. Android:1つのアクティビティから別のアクティビティへWebViewを渡す方法
- 22. Android:ArrayList <object>をアクティビティから別のものに渡す方法
- 23. bidimensional String Array変数を1アクティビティから別のアクティビティに渡す
- 24. recyclerviewアダプタから別のアクティビティに画像を渡す方法
- 25. jsonイメージをリサイクラビューから別のアクティビティに渡す方法
- 26. インテントを使用せずに、あるアクティビティから別のアクティビティへカスタムリストビューを渡す方法
- 27. Android ||あるアクティビティから別のアクティビティへ画像を解析する方法は?
- 28. 別のアクティビティからアクティビティを終了する方法
- 29. あるアクティビティから別のアクティビティにデータを送信する
- 30. RecyclerViewアイテムから別のアクティビティにオブジェクト値を送る方法
私の答え[ここ](http://stackoverflow.com/questions/7400564/android-parcelable-retailerorderactivity-java-return-null)を確認してください。 [Parcelable](http://developer.android.com/reference/android/os/Parcelable.html)を使った完全な例。 Parcelableの詳細については、Androidのドキュメントを使用することができます。 –