をTabLayout
介して2つのフラグメント(両方ともアイテムのリストを保持する)が取り込まれた(デザインライブラリからの)を持っていFragmentPagerAdapter
ます。
2 つのリストは相互に関連しています。どちらも合計人数を保持し、その人がどちらのリストに含まれているかによって、その人が指名されるかどうかが決まります。メンバーをあるリストから別のリストにスワイプしたり、その逆にスワイプしたりできます。
問題
タブのタイトルに (特定のリストに含まれる人数の) カウントを表示したい/必要があります。簡単です。少しコードを追加するgetPageTitle
と、問題なく動作します。リストを変更するまでは、FragmentPagerAdapter
タイトルをもう一度更新するように に指示する必要があります。
これまでのところ、私が見つけた唯一の解決策は次のように呼び出すことでした:mTabLayout.setTabsFromPagerAdapter(mAdapter);
このメソッドが行うことはすべて、持っremoveAllTabs
ているものをループしてFragmentPagerAdapter
、それらを新しいものとして追加します。
これはタイトルでは機能しますが、あまり効率的ではありませんが、最も重要なことは、最初のタブが再び選択されたアイテムになることです。
通話mViewPager.setCurrentItem(int item)
後に追加しようとしましたが、うまくいきません。mTabLayout.setTabsFromPagerAdapter(mAdapter);
私も次のようなことを試しました
mAdapter.notifyDataSetChanged();
tabLayout.invalidate();
効果なし。