当我从main启动一个活动时,调用main的onCreate(),当启动的活动结束时,onDestroy()被调用

时间:2017-08-03 01:51:36

标签: android

这就是我发布活动的方式:

Intent intent = new Intent(Quotr.this, AddQuote.class);
startActivityForResult(intent, ADD_QUOTE_REQUEST);

该活动通过调用finish()

结束

但是当我不希望它们被调用时,我的主要活动(在Quotr.class中定义)中的onCreate()onDestroy()方法一直存在问题。我在这两个方法中添加了对Log.v()的调用以查看调用的内容以及何时,奇怪的是,当活动启动时,调用主活动的onCreate(),以及新活动完成时,调用main活动的onDestroy()方法。

这引起了大量的问题,我现在甚至不知道如何解决它,因为我在主要活动的onDestroy中进行了所有清理(我只希望在活动被重新创建时运行,并非每次启动此新活动时都会在活动仍在使用时调用。

奇怪的是,这只发生在这个特定的活动中。据我所知,我正在以完全相同的方式调用并完成所有其他活动意图,但它们并没有像主要活动的生命周期那样混乱,就像这个AddQuote.class那样。

我真的不知道此时我还能检查什么。我已经检查了清单中的任何错误,我检查过我理解活动生命周期,但这实际上没有任何意义。

1 个答案:

答案 0 :(得分:0)

天啊,我是个白痴。

我正在开发一个在一年半的时间里慢慢建立的应用程序,这是我第一次尝试应用程序。出于某种原因,对于我在应用程序中创建的第一个新活动(我遇到问题的那个),我正在扩展主要活动而不是AppCompat活动。所以我对super.onCreate()和super.onDestroy()的调用正在回调主活动,因为那是超类。

无论如何,我还会把这个错误留下来。希望它可以帮助某人。