私はR.layout.myFragment
としてアクセスされる(あらかじめ書かれた)断片を持っています。 ViewPager内のFragmentPagerAdapterにFragment(あらかじめ記述されたコードでも)を渡さなければならないので、getFragmentManager().findFragmentById(R.layout.myFragment)
として渡そうとしましたが、おそらくR.id.something
という形の何かを期待してnullを返しました。
Googleマップフラグメントの実装に関連して、ここでいくつかの回答が見つかりましたが、私はR.layout.myFragment
の形でフラグメントを使用し、親/コンテナフラグメントを持たない(または私が知る限り、同様のもの)を使用してFragmentTransactionを使用します。
フラグメントは、ViewPagerのFragmentPagerAdapterのgetItem()オーバーライドで返されることが予想されます。そのフラグメントを返すためにそれを渡すにはどうしたらよいですか?このフラグメントを返すにはどうしたらいいですか?
2
A
答えて
0
解決策は2つあります。両方とも、必要なものを見つけるためにすべての断片を繰り返します。
としては、あなたが接続されているすべてのフラグメントのリストを作成し、後でそれを反復処理するためにActivityクラスのonAttachFragmentメソッドを使用することができ、didi_X8によってhereを説明した:
List<WeakReference<Fragment>> fragList = new ArrayList<WeakReference<Fragment>>();
@Override
public void onAttachFragment (Fragment fragment) {
fragList.add(new WeakReference(fragment));
}
public List<Fragment> getActiveFragments() {
ArrayList<Fragment> ret = new ArrayList<Fragment>();
for(WeakReference<Fragment> ref : fragList) {
Fragment f = ref.get();
if(f != null) {
if(f.isVisible()) {
ret.add(f);
}
}
}
return ret;
}
用いることであろうas explained by Michael別の解決策をライブラリをサポートし、getFragmentsメソッドを利用してください:
public List<Fragment> getVisibleFragments() {
List<Fragment> allFragments = getSupportFragmentManager().getFragments();
if (allFragments == null || allFragments.isEmpty()) {
return Collections.emptyList();
}
List<Fragment> visibleFragments = new ArrayList<Fragment>();
for (Fragment fragment : allFragments) {
if (fragment.isVisible()) {
visibleFragments.add(fragment);
}
}
return visibleFragments;
}
関連する問題
- 1. ベクターを返すにはどうしたらいいですか?
- 2. PHPからXMLメッセージを返すにはどうしたらいいですか?
- 3. Json.net:[WebMethod]からJObjectを返すにはどうしたらいいですか?
- 4. マッピングからReact Componentを返すにはどうしたらいいですか?
- 5. 次のフラグメントから最後にポップアップしたフラグメントにナビゲートするにはどうすればよいですか?
- 6. 親フラグメントからネストされたフラグメントのビューを作成するにはどうすればいいですか?
- 7. フラグメントを破壊しないようにするにはどうしたらいいですか?
- 8. 3回目のフラグメントをスワイプしたら、ビューページアダプターから前の2つのフラグメントを削除するにはどうしたらいいですか?
- 9. 1つのフラグメントから別のフラグメントにデータを送信するにはどうすればいいですか?
- 10. 1つのフラグメントから別のフラグメントにデータをバンドルするにはどうすればいいですか?
- 11. Django Rest FrameworkでHttpResponseを返すにはどうしたらいいですか?
- 12. フラグメントからサービスをバインドするにはどうすればいいですか?
- 13. HTML DropDownListForを返信するにはどうしたらいいですか?
- 14. Firebugliteを開封するにはどうしたらいいですか?ここ
- 15. Xcode 8.2.1でこれを行うにはどうしたらいいですか?
- 16. フラグメント内のビットマップを正しくリサイクルするにはどうしたらいいですか?
- 17. フラグメント内のメソッドにイメージビューを渡すにはどうしたらいいですか?
- 18. このコードを改善するにはどうしたらいいですか?
- 19. このDjangoテンプレートをレンダリングするにはどうしたらいいですか?
- 20. このテキストを削除するにはどうしたらいいですか?
- 21. このカスタムビューを表示するにはどうしたらいいですか?
- 22. CSSでこのシェイプを作るにはどうしたらいいですか?
- 23. pongongoでmongodbオブジェクトの配列を返すにはどうしたらいいですか? MapReduceでこれを行うことはできますか?
- 24. viewpagerフラグメントのタグを設定するにはどうしたらいいですか?
- 25. lucene highlighter:フラグメントの位置を取得するにはどうしたらいいですか?
- 26. Arduinoサーバーから$ .get呼び出しにデータを返すにはどうしたらいいですか?
- 27. javascript関数の内部で.thenから値を返すにはどうしたらいいですか?
- 28. ソケットから読み込んで個々の行を返すにはどうしたらいいですか?
- 29. Schemeでペアのリストからペアを返すにはどうしたらいいですか?
- 30. ViewPagerでそのフラグメントを再作成させるにはどうしたらいいですか?
コードはどこですか?疲れましたか? – Nambi
あなたを助けた場合は、回答を受け入れることを検討してください – SoroushA