今天自定义了一个AlertDialog对话框,第一次点击时正常,但第二次调用时会出现错误:java.lang.IllegalStateException: The specified child already has a parent. You must call removeView() on the child's parent first.
出错的代码为:
//窗口构造器
synchronized protected View GetTextEntryView() {
LayoutInflater inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
switch (Dialog_TYPE) {
case DIALOG_TYPE_EXIT://退出对话框
return inflater.inflate(R.layout.datalist, null);
default:
break;
}
return null;
}
而提示的大致意思是说为一个子视图指定了多个父视图。由此可以推断出,在第二次点击按钮弹出对话框时,子视图与第一次点击时的子视图是同一个对象,而父视图已经不再是同一个对象了。
解决方法非常简单,只需要重写对话框的show()方法即可:
@Override//重写show()方法
public AlertDialog show() {
//再次绑定View
setView(GetTextEntryView());
return super.show();
}
分享到:
相关推荐
android 自定义 dialog android 自定义 dialog android 自定义 dialog android 自定义 dialog
整理了常用的dialog 包括:single Choice Dialog Multiple choice Dialog Input Dialog Progress Dialog
android 自定义组合progressdialog进度条,方便你的使用............................................................................................
android自定义dialog
android自定义全屏dialog,可以全屏显示图片。
Android自定义dialog,需要的继续带走
自己整理的自定义控件方法,看了你就会做自定义Dialog和Toast了,没有多余代码,很简洁。背景、按钮都能自定义
很好android自定义dialog加载转圈等待,适合初学,透明+正常两种主题,屏蔽返回键(自己修改参数,主题也是)
android自定义Dialog的简单实现,具体实现可以查看博客:http://blog.csdn.net/qq_20785431/article/details/53396985
Android自定义dialogDemo
Android自定义显示内容的Dialog,有两种实现方式,一个继承Dialog,一个继承PopupWindow。
android自定义Dialog下载文件 ,在自定义的Dialog上显示文件下载的速度和ProgressBar进度,共享给大家! 欢迎指点提议 Email:vipa1888@163.com QQ 840950105 Author: spring sky
Android自定义控件:可重用的自定义Dialog类
Dialog 很经常用到的一个控件,但大多时候系统默认的样式是不满足于项目使用的,故自定义了一套合适的Dialog模板方便日常使用。
android自定义dialog嵌套listview,有点击事件
android利用布局文件自定义Dialog、Toast
android 自定义dialog 带有各种显示动画效果
一个可以直接使用的自定义AlertDialog,封装的很完整的一个Demo,可以灵活使用,里面提示图标还额外添加了动画效果,希望可以帮到大家。
android自定义dialog嵌套listview自适应屏幕