我已经设置了一个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
之一:
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);
}
虽然这似乎在一个干净的开始后起作用,但在某些情况下它开始下降;特别是当碎片被破坏然后重建时,似乎。有没有人有更好/更清洁/更简单的解决方案?