使用DrawerLayout保存片段的状态

时间:2014-03-14 19:40:16

标签: android android-activity fragment instance

我使用this tutorial制作SliderView。

在第一个片段中,我有一个带有暂停按钮,播放按钮和停止按钮的媒体播放器。 当我按下播放按钮时,它会启用其他按钮,并自行禁用。 之后,我使用Slider Menu转到另一个片段。当我返回到我的媒体播放器所在的第一个片段时,按钮处于初始状态。它再次调用onCreateView。

我需要知道如何保存该片段的状态以便以后显示它。

1 个答案:

答案 0 :(得分:0)

在Android的开发者网站上查看Fragment文档。在他们的例子中,他们清楚地展示了如何保存状态here。为了便于使用,我将在这里复制:)。

基本上,您必须检查onActivityCreated中的已保存状态,并在onSaveInstanceState中保存任何所需信息,如下所示:

@Override
public void onActivityCreated(Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);

    .....

    if (savedInstanceState != null) {
        // Restore last state for your player information.
        mIsPlaying = savedInstanceState.getBoolean("isPlaying", false);
    }
    ......
}

@Override
public void onSaveInstanceState(Bundle outState) {
    super.onSaveInstanceState(outState);
    outState.putBoolean("isPlaying", mIsPlaying);
}