ボタンを押した後にTabLayoutのコンテンツを変更しようとしています。TabLayoutは古いアダプタのフラグメントを保持します
私は5つの断片を持っています。 TabLayoutには1. 2.と3.フラグメントが含まれています。ナビゲーションドロワーボタンを押したときにTablayoutを3にするように変更したいと思います。4.
現在のところ、 TabLayoutからすべてのフラグメントを一度に削除して、アダプターがそうしなければならないと指示したときにそれらを置き換えることができます。
私は、(それは、断片1の一切の言及が含まれている2と3はありません)、アダプタを交換null
にアダプタを設定し、様々な組み合わせで.notifyDataSetChanged();
を呼び出してみました。しかし、私が思いついたことは、実際にはTabLayoutを強制的に更新し、古い断片を取り除いて新しい断片に置き換えることです。私はこれだけでtablayoutで最初のフラグメントを更新するために管理してきました
、その後、適切な断片は、(アダプターが実際に告げる何を)示されている:
Fragment fragment = getSupportFragmentManager().findFragmentByTag("android:switcher:" + R.id.pager + ":" + viewPager.getCurrentItem());
if (fragment != null) // could be null if not instantiated yet
{
if (fragment.getView() != null) {
// Pop the backstack on the ChildManager if there is any. If not, close this activity as normal.
fragment.getActivity().getSupportFragmentManager().beginTransaction().remove(fragment).commit();
}
}
私は私がやりたいものをどのように行うことができます?