snrg.net
当前位置:首页 >> AnDroiD 开发 对话框DiAlog Dismiss和hiDE方法的区别 >>

AnDroiD 开发 对话框DiAlog Dismiss和hiDE方法的区别

cancel会去调dismiss的,如果调用的cancel的话就可以监听DialogInterface.OnCancelListener ,如下 dismiss可以在任何线程调用,但是最好不要覆写dismiss方法,实在需要就在onStop里去override。 在dismissDialog里调用了onStop 补上hide方法,...

查看dialog.hide()的注释: Hide the dialog, but do not dismiss it。 说明只是隐藏dialog视图,并没有把视图移走。 查看hide的源码你会发现: /** * Hide the dialog, but do not dismiss it. */ public void hide() { if (mDecor != null) { ...

dismiss和hide方法都可以隐藏对话框,在需要的时候也可以用show方法调用显示。但是,这两者是有区别的。 dismiss方法会释放对话框所占的资源,而hide方法不会。activity退出前必须调用dismiss方法关闭对话框。 如果对话框上有progressbar,你会发...

hide是隐藏,dialog这个对象还在,不需要重新new和设置参数,可以直接show;而dismiss一般是页面关闭的时候,把dialog清理掉。你可以试一下dismiss以后再show,是出不来的

hide的方法,应该界面还在,只是看不见了。你可以开启开发者模式看看边界应该还可以看到的。dismiss类似于销毁了。

你的powerOffDialog初始化是放在哪里的?这部分代码也贴出来看看 感觉是新建了很多AlertDialog实例,但是powerOffDialog变量引用的是最新创建的dialog实例,之后调用dismiss,其他Dialog就没消失

查看dialog.hide()的注释: Hide the dialog, but do not dismiss it。 说明只是隐藏dialog视图,并没有把视图移走。 查看hide的源码你会发现: /** * Hide the dialog, but do not dismiss it. */ public void hide() { if (mDecor != null) { ...

就是如果创建AlertDialog的时候设置了setOnCancelListener 这个mCancelMessage变量有作用,那么cancel 比dismiss要多做一些任务,否则dismiss和cancel效果等同。

区别 在创建AlertDialog的时候调用setOnCancelListener 这个mCancelMessage变量有作用,否则dismiss和cancel等同。 1)dismiss的源码: public void cancel() { if (mCancelMessage != null) { // Obtain a new message so this dialog can be r...

创建对话框方法dialog() protected void dialog() { AlertDialog.Builder builder = new Builder(Main.this); builder.setMessage("确认退出吗?"); builder.setTitle("提示"); builder.setPositiveButton("确认", new OnClickListener() { @Ove...

网站首页 | 网站地图
All rights reserved Powered by www.snrg.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com