タブ付きのマルチフラグメントABSフラグメントアクティビティと、ViewPagerがうまく機能していますが、アプリケーションの実際の機能では、フラグメントを取得してそれらと通信できる必要があります。 findFragmentById()を呼び出せるようにするには、フラグメントにはIDが必要です(正しく理解すれば、<fragment
>タグを持つか、FragmentTransactionで作成する必要があります)。私が使用しているTabsAdapter/ViewPagerコードは、Fragment.instantiate()を使ってFragmentクラスからフラグメントを作成します。これはIDの設定を許可していません。<fragment>タグを使用して、ActionBarSherlock TabsPagerの一部であるフラグメントをレイアウトできますか?
ので、タブの断片を作成するためにViewPagerでタグを使用するか、またはFragmentTransactionを使用する方法のための任意のアイデア? TabsAdapter内で自分のid/fragmentマッピングを実装することは簡単ですが、可能であれば標準的なメカニズムを使用したいと思います。
ご利用の場合は何ですか?あなたは、「私は断片を握り、彼らとコミュニケーションすることができる必要がある」と言います。 AndroidのアクティビティAPI(getFragmentById(...)など)だけではできない方法があります。 ViewPagerでフラグメントを作成する場合は、ViewPagerからフラグメントを参照できるようにする必要があります。 郵便番号以上の詳細 –
私の使用例は、私のタブが複雑なオブジェクトのマスタービューといくつかの詳細ビューですが、データは通信スレッドで取得され、フラグメントUIが作成された後に非同期に到着するため、結果。私が言ったようにTabsAdapterでそれらをマップすることができましたが、それらをより疎結合させることを望んでいました(おそらく大量生産、それです...)。それをもう少し試した後、より良い解決策は、そのデータをフラグメントに追加し、notifyDataSetChanged()を使用してUIの更新をトリガーします。 –