Android 恢复活动

Android 恢复活动,android,android-activity,methods,resume,Android,Android Activity,Methods,Resume,我对简历活动有问题。我有一个包含其他活动的MainActivity。每一个都包含一个无线电台。我在每个活动中都有一个按钮(Play),当用户单击它时,该按钮将其功能更改为Stop,因此它将变为Stop按钮。我的问题是,当我从活动(B)转到主活动,然后返回活动(B)而不是停止按钮时,它会再次显示播放按钮,如果按下按钮,播放器会在同一时刻再次播放同一电台。我尝试使用flag恢复活动,但没有成功 我的代码如下所示: if (position == 3) { Intent intent = ne

我对简历活动有问题。我有一个包含其他活动的MainActivity。每一个都包含一个无线电台。我在每个活动中都有一个按钮(Play),当用户单击它时,该按钮将其功能更改为Stop,因此它将变为Stop按钮。我的问题是,当我从活动(B)转到主活动,然后返回活动(B)而不是停止按钮时,它会再次显示播放按钮,如果按下按钮,播放器会在同一时刻再次播放同一电台。我尝试使用flag恢复活动,但没有成功

我的代码如下所示:

if (position == 3) {
    Intent intent = new Intent(RadioActivity.this, Taraf.class);
    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP|Intent.FLAG_ACTIVITY_SINGLE_TOP);
    startActivity(intent);  
}
<activity
    android:name=".SettingsActivity"
    android:launchMode="singleTop"
    android:screenOrientation="portrait">
</activity>

<activity
    android:name=".MainActivity"
    android:label="@string/app_name"
    android:launchMode="singleTop">
</activity>
清单如下所示:

if (position == 3) {
    Intent intent = new Intent(RadioActivity.this, Taraf.class);
    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP|Intent.FLAG_ACTIVITY_SINGLE_TOP);
    startActivity(intent);  
}
<activity
    android:name=".SettingsActivity"
    android:launchMode="singleTop"
    android:screenOrientation="portrait">
</activity>

<activity
    android:name=".MainActivity"
    android:label="@string/app_name"
    android:launchMode="singleTop">
</activity>


您应该将按钮的状态保存在SharedReferences中,并在返回活动(B)时重试,然后根据保存在SharedReferences中的按钮的状态重置按钮。您可以参考文档。

您必须将状态保存在共享首选项或任何其他存储中的某个位置。 当您返回活动时,您可以检索此数据。

查看此信息