1

我已经设置了一个应用程序,其中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);
}

虽然这似乎在干净启动后有效,但在某些情况下它开始下降;尤其是当碎片被摧毁然后被重建时,似乎。有没有人对此有更好/更清洁/更简单的解决方案?

4

0 回答 0