ViewPager
のカスタム実装をラップしてアプリをセットアップしましたFragmentPagerAdapter
。ActionBar
ただし、プライマリフラグメントに基づいてタイトルを更新したいと思います。からのコードを次に示しFragmentAdapter
ます。
public void setPrimaryItem(ViewGroup container, int pos, Object object) {
this.cur = pos;
getItem(pos).onPrimary(pos);
}
からActivity
:
public void setTitle(int pos, String title) {
if (pos == this.fa.cur) { // this.fa is the FragmentAdapter
super.setTitle(title);
}
}
そして、私Fragment
の 1 つから:
public void onPrimary(int pos) {
this.pos = pos;
if (this.activity != null && this.title != null)
this.activity.setTitle(pos, this.title);
}
private void setTitle(String title) {
this.title = title;
if (this.activity != null && this.title != null)
this.activity.setTitle(this.pos, title);
}
これは、クリーンなスタートの後に機能するように見えますが、場合によっては低下し始めます。特にフラグメントが破壊されてから再構築された場合、そう思われます。これに対するより良い/よりクリーンな/よりシンプルなソリューションを持っている人はいますか?