2012-07-04 29 views
0

我想通过使用对话框强制我的Android应用程序从onPause方法直接转到onResume方法。如何强制从onPause到onResume的生命周期

我在我的FirstActivity类的onClick方法,实现OnClickListener下面的代码:

Dialog dialog = new Dialog(this); 

dialog.setContentView(R.layout.newlayout); 
dialog.setTitle("This is my custom dialog box"); 
dialog.setCancelable(true); 
dialog.show(); 

我已经设置了每个生命周期方法,当Android应用进入每个方法打印出日志信息:

Log.i(ActivityName, " onCreate"); 
Log.i(ActivityName, " onPause"); 
Log.i(ActivityName, " onResume"); 

等等..

当我点击我的按钮显示对话框,该对话框显示出来就好了,但我没有收到任何L-显示对话框时正在调用onPause的消息,并且当我按下手机上的“返回”按钮以退出对话框时,我没有收到任何正在调用onResume方法的日志消息。

我在做什么错?

+0

当对话框显示在那个时候你的活动不会进入后台或不停止或暂停。这就是为什么你没有得到任何日志。阅读这个更多细节。 http://developer.android.com/reference/android/app/Activity.html –

回答

0

A Dialog始终会创建并显示为Activity的一部分(请在对话框中查看this article)。这就是为什么你的Activity方法onResume和没有被调用。当显示Dialog时,您的Activity仍处于运行状态。

+0

所以我必须在对话框中启动一个新的Activity? – Birdman

+1

在这种情况下,是的。只需创建一个新的Activity并将其声明为清单中的一个对话框:[Activity as a dialog](http://stackoverflow.com/a/1979631/1328337) – droid8421

相关问题