2013-05-15 56 views
0

在我的代码中,我将一个活动调用finsh,但不会调用此活动的onDestroy方法。任何人都可以告诉我为什么?什么时候会调用onDestroy方法?谢谢android:为什么我打电话给finsh时不会调用onDestroy?

+0

这里是什么文件说,有关onDestory'你的活动之前,您会收到最终的通话将被破坏。这可能是因为活动正在完成(某人称为finish(),或者系统暂时销毁此活动的实例以节省空间,您可以使用isFinishing()方法区分这两种情况。所以发布你的代码 – Pragnani

+0

我看到了sorce代码发现问题是活动的父母不为null,如果它的finish()方法不会工作本身,但他的父母 –

回答

0

仅当系统资源(内存,cpu时间等)较低时才会调用onDestroy(),并决定终止活动/应用程序或者有人调用finish()来完成活动。

因此,要测试您的代码(),您可以制作一个测试按钮,这将在您的活动中调用finish()。

我相信你不需要在onDestroy()中调用所有这些东西,直到adap不是关键资源。即使在这种情况下,android系统也有正确处置它们的机制。

,了解详情可以参考Here

+0

请勿在stackoverflow帖子中使用缩写像U.写短信给你的好友 – Krishnabhadra

+0

不好意思@Krishnabhadra现在可以了.. – Nandu

+0

问题是活动的父母不为空,如果它的finish()方法不会自己工作,但他的父母 –

相关问题