Dialog VS DialogFragment

来源:互联网 发布:网络用语沙发的意思 编辑:程序博客网 时间:2024/05/20 13:06

Android中两种方法创建对话框:Dialog和DialogFragment。
DialogFragment是Android 3.0之后引入的。
Google建议使用DialogFragment创建对话框。
DialogFragment相对于Dialog的好处在于:当某种原因导致对话框所在的Activity重新创建时,Dialog会被消失(但没有被销毁),而DialogFragment会在FragmentManager的作用下重新创建。这时,你会发现,使用Dialog会报错:Android leaked…Window。这时因为Android规定在Activity销毁之前必须销毁其上的Dialog,但此时Dialog并没有销毁,故报错。
故使用Dialog的话,代码应该这样写:

//Activity的onDestroy方法onDestroy() {    //销毁mDialog    mDialog.dismiss(); //或者mDialog.cancel();     mDialog = null; }

大概意思一下,格式有误的话,忽略~

0 0