0

我有一个 4 页的 ViewPager。让我们称A,B,C,D。

页面 A、B、C 始终相同,但最后一页必须显示取决于应用程序状态的片段。当用户未登录时,页面 D 必须显示登录片段,当用户登录时,页面 D 必须显示配置文件片段。

为此,我只需在我的适配器中添加一个标志,用于控制用户是否在页面滑动时登录。

问题是,当用户单击登录按钮时,我必须显示配置文件片段。我不能强制寻呼机用五分之一更改页面,因为我需要ViewPagerIndicator只显示 4 行来指示页面。

那么如何在不更改页面 D 的情况下将最后一个片段更改为另一个片段?

请记住,我不能在片段内使用片段技术,因为我也在为 Gingerbread 开发。

4

1 回答 1

0

更改您的架构以包含片段页面 D、E (登录方面、个人资料方面)。

使用 FragmentStatePagerAdapter 以便您可以“删除”查看过的页面。

 On a stateChange to 'onNoCurrentUser' ...
    ... remove fragment=profile
    ... add fragment=logon 
    ... call notifyDataSetChanged

 On a stateChange to 'onCurrentUser' ...

    ... remove fragment=logon
    ... add fragment=profile
    ... call notifyDataSetChanged
于 2013-10-10T18:41:32.413 回答