Android - 活动持续存在,因为在调用startActivity后被销毁

时间:2017-06-11 15:23:44

标签: android android-activity

这是问题的中心:

活动“A”有一个按钮,而不是调用startActivity B.

活动“B”有一个按钮然后调用finish()。因此应用程序再次显示活动“A”。

现在,如果我将活动称为“B”属性 mDestroyed = true

问题: 当我第二次访问B时B被销毁

为什么在我调用startActivity后B继续销毁?

有人可以帮助我吗?

manifest资源配置文件:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="br.com.xxxxxx">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="xxx"
        android:supportsRtl="false"
        android:theme="@style/MyMaterialTheme">

        <activity
            android:name=".BaseActivity"
            android:screenOrientation="portrait" />

        <activity
            android:name=".A"
            android:screenOrientation="portrait" />
        <activity
            android:name=".B"
            android:screenOrientation="portrait" />

    </application>

</manifest>

活动B方法:

 @Override
                        public void onClick(DialogInterface dialog, int which) {
                            finish();
                        }

活动方法:

   @Override
                    public void onClick(View view) {
                        startActivity(new Intent(MainActivity.this, B.class));
                    }

当我第二次进入B时: When i acess B a second time

1 个答案:

答案 0 :(得分:2)

finish()方法调用onDestroy()个活动。将finish()替换为

startActivity(new Intenet(CurrentActivity.this, NewActivity.class));

您当前的活动将在后台进行。