【问题标题】:Android StartActivity kill the exisiting activity first and its ondestroyed should get called and Switch to new ActivityAndroid StartActivity 首先杀死现有的活动,它的 ondestroy 应该被调用并切换到新的活动
【发布时间】:2020-09-01 17:02:27
【问题描述】:

Android StartActivity 首先杀死 Activity1,它的 ondestroyed 应该被调用。完成后,打开另一个活动。

  startActivity(new Intent(Activity1.this, Activity2.class));
                        finish();

即使我在这种情况下首先调用完成,Activity1 ondestroy 方法也会在 Activity2 显示给用户之后调用。我正在寻找正确的方法,我可以确保 Activity1 被完全销毁然后只显示 Activity2

【问题讨论】:

    标签: android


    【解决方案1】:

    你可以调用finish(),在onDestroy()里面调用startActivity():

    void onDestroy() {
      startActivity(new Intent(Activity1.this, Activity2.class));
      super.onDestroy();
    }
    

    【讨论】:

      【解决方案2】:

      Mabye noHistoryatrribute 帮你解决这个问题

      <activity android:name=".ClassName" android:noHistory="true" ... />
      

      另外,看看这篇文章: Start new Activity and finish current one

      【讨论】:

        猜你喜欢
        • 2013-12-17
        • 1970-01-01
        • 1970-01-01
        • 2011-08-31
        • 1970-01-01
        • 2015-07-31
        • 1970-01-01
        • 2019-12-13
        • 1970-01-01
        相关资源
        最近更新 更多