ポートレートとランドスケープをサポートできるアプリケーションを作りたいと思っています。レイアウトには2つのペインがあり、左側にオプションがあり、右側に結果が表示されます。オプションが選択されると、右側のペインにそのオプションが表示されます。しかし、肖像画のために十分な部屋がないので、別の活動が必要です。各オプションは異なるタイプのフラグメントを生成するので、アクティビティー間で変更されたすべてのフラグメントがそこに追加されている場合には、各オプションごとにアクティビティーを作成する必要はありません。主な活動の断片を新しいものに渡したいのですが、どうすればいいでしょうか?アクティビティ間でフラグメントを渡す
4
A
答えて
4
メインアクティビティのフラグメントを新しいアクティビティに渡したいのですが、どうすればいいですか?
あなたはそうではありません。ほとんどの場合、あなたは@ Riboseの答えに従うでしょう - 余分にアクティビティにフラグを渡して、作成するフラグメントのセットを指定します。
5
EDIT:実際に上に移動したいものに移動しました。
アクティビティにデータを渡す場合は、で使用されている意図でIntent.putExtra()
のバージョンを呼び出します。次に、getIntent().getStringExtra()
を使用して、アクティビティで余分な文字列を取得できます。
最初のアクティビティには、myString
という文字列データがあるとします。あなたがどうなるonCreate
であなたの新しい活動で今
Intent intent = new Intent(this, SecondActivity.class);
intent.putExtra(EXTRA_NAME_CONSTANT, myString);
startActivity(intent);
:
String myString = this.getIntent()
.getStringExtra(EXTRA_NAME_CONSTANT, "default return value here");
いくつかの注意事項:そのEXTRA_NAME_CONSTANT
については
- 、私は、フォームの文字列定数を作るために意味ですか"your.package.name.SomeString"(例: "com.example.MyString")。個人的には、余分な名前についてはリソース(形式:
getString(R.string.extra_my_string)
)を使用しています。パッケージ名の前に接頭辞を付けることをお勧めします。 - 文字列から配列に、さまざまな種類のデータを入れて、シリアライズ可能なデータにすることができます。
代わりの異なるレイアウトの向きのためseparete活動を行うことusing resource qualifiers to provide alternative layouts考えます。
ので、同じような構造で2つのレイアウトを作成し、要約すると、両方のXMLファイルは同じ名前が付けられ
/res/layout/yourlayout.xml
/res/layout-land/yourlayout.xml
。次に、デフォルトのポートレートレイアウトを1つにし、ランドスケープ版をもう1つに作成します。
onCreate
でレイアウトを拡張したとき(実行時に自動的にレイアウトが変更されたとき)、正しいレイアウトが選択されます。
関連する問題
- 1. アクティビティのデータをフラグメントに渡す方法
- 2. フラグメント間のデータを渡す
- 3. アクティビティ間でハンドラを渡す
- 4. Androidのインテントを使用して、アクティビティ間でデータをフラグメントに渡す方法
- 5. インテントでアクティビティ間でデータを渡す
- 6. アクティビティ間で値を渡す方法
- 7. 2つのアクティビティ間でデータを渡す
- 8. アクティビティ間でカスタムクラスを渡す方法
- 9. アクティビティ間でクラスのインスタンスを渡す
- 10. Android:アクティビティ間でFacebookセッションを渡す
- 11. フラグメントとアクティビティ間の通信 - ベストプラクティス
- 12. アクティビティとフラグメントの間でコールバックを作成するには?
- 13. フラグメントはアクティビティですか? (Android)
- 14. フラグメントから別のアクティビティに値を渡す
- 15. Androidのアクティビティ間にプロトタイプを渡す
- 16. アクティビティ間にparseGeoPointを渡します
- 17. 単一のアクティビティでフラグメント間を切り替える
- 18. アクティビティ間でのパスワードの受け渡し
- 19. Viewpagerはフラグメント間でバンドルを渡します
- 20. アクティビティにフラグメントを追加する前にフラグメントを拡大する
- 21. フラグメントとアクティビティの間でデータを送信するとアプリケーションがクラッシュする
- 22. アクティビティ間の変数の受け渡し
- 23. アクティビティ間の値の受け渡し
- 24. アクティビティ間にサーフェスを渡すことはできますか?
- 25. アンドロイドの2つのアクティビティ間でデータを渡す方法は?
- 26. Androidのアクティビティ間で効率的にカスタムオブジェクトデータを渡す[Mono Android]
- 27. アンドロイドのアクティビティ間でイメージビューを渡すには
- 28. ブラウザのJavaScriptとアクティビティの間でデータを渡す
- 29. 2つのアクティビティ間でデータを渡す方法
- 30. 2つのアクティビティ間で値の配列を渡す
私は異なるレイアウトの向きに対して別々のアクティビティを作ろうとはしませんが、2つのペインがあり、どちらもフィットできない場合は、その2番目のペインに新しいアクティビティが必要です。ある活動から別の活動に断片を渡したい。各オプションは、チェックボックスとテキスト編集のレイアウトを生成するので、2つのオプションが同じレイアウトを共有することはありません。 – Hank
ああ。あいまいな言葉「断片」によって、私はあなたが望むデータの種類を意味するものと考えています。私は私の答えを更新します。 – Ribose
フラグメントは、このメソッドをExtraに配置することはできません。フラグメントを意味する場合は、次のようになります。http://developer.android.com/reference/android/app/Fragment.html – Hank