错误报告:

10-21 13:11:16.009: E/AndroidRuntime(27937): FATAL EXCEPTION: main
10-21 13:11:16.009: E/AndroidRuntime(27937): java.lang.IllegalStateException: The specified child already has a parent. You must call removeView() on the child's parent first.

问题分析:

在获取自定义View的过程中,setView()使用了我定义的edit_view(EditText类型),根据报错结果,edit_view已经把第一次点击生成的对话框作为自己的父组件,父与子一对多。

Builder dialog = new AlertDialog.Builder(
CompleteProfileActivity.this).setTitle("请输入昵称")
.setView(edit_view)
.setPositiveButton("确定", positiveListener)
.setNegativeButton("取消", negativeListener); dialog.show();

检查发现我的edit_view写在了onCreate()方法里面,至始至终只有一个,必然不能再次被加到另一个对话框上。

解决办法:

把edit_view的创建写在对话框所在方法体内edit_view=new EditText(xxxActivity.this);

setView的AlertDialog在受到二次点击后出错的更多相关文章

  1. Android中的AlertDialog使用示例二(普通选项对话框)

    在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择.这些功能我们叫它Android Dialog对话框,AlertDialog实现方法为建造者模式. ...

  2. 树莓派二:apt-get出错、蓝牙、汉化、输入法

    用apt-get install一个软件的时候出现了一个错误: E: Encountered a section with no Package: header E: Problem with Mer ...

  3. Newtonsoft.json 二次引用出错解决办法

    一.一般在C# 项目中二次引用会出现如下错误: 解决办法:用编辑器打开项目下的文件(*.csproj),可以找到在这个文件中,Newtonsoft.Json的引用,删掉引用,然后在项目中重新引用就可以 ...

  4. android中提示&对话框----AlertDialog

    AlertDialog(对话框) 一.对话框的基本使用流程 step1:创建AlertDialog.Buider; step2:调用setIcon()设置图标,setTitle()或者setCusto ...

  5. 自定义AlertDialog的样式

    一.在XML中定义好要显示的AlertDialog的布局 二.在代码中创建alertdialog 对象 AlertDialog dialog = new AlertDialog.Builder(thi ...

  6. alertDialog创建登陆界面,判断用户输入

    alertDialog创建登陆界面,需要获取用户输入的用户名和密码,获取控件对象的时候不能像主布局文件那样获得, 需要在onClickListener中获取,代码如下: public boolean ...

  7. AlertDialog具体解释

    对话框介绍与演示样例         对话框在程序中不是必备的,可是用好对话框能对我们编写的应用增色不少.採用对话框能够大大添加应用的友好性.比較经常使用的背景是:用户登陆.网络正在下载.下载成功或者 ...

  8. 024 Android 自定义样式对话框(AlertDialog)

    1.AlertDialog介绍 AlertDialog并不需要到布局文件中创建,而是在代码中通过构造器(AlertDialog.Builder)来构造标题.图标和按钮等内容的. 常规使用步骤(具体参见 ...

  9. 有关python下二维码识别用法及识别率对比分析

    最近项目中用到二维码图片识别,在python下二维码识别,目前主要有三个模块:zbar .zbarlight.zxing. 1.三个模块的用法: #-*-coding=utf-8-*- import ...

随机推荐

  1. MVC 导出Excel 的其中一方法(View导出excel)

    场景:mvc下导出excel 思路:使用View导出excel 步骤: 1.导出标签添加事件 $("#export_A").click(function(){ //省略代码.... ...

  2. 使用 bash 创建定时任务

    假设要增加每分钟执行一次的检测任务 (crontab -l; echo "* * * * * python check.py") | crontab 在 centos 6 上, 注 ...

  3. using namespace std 和 using std::cin

    相较using std::cin使用using namespace std不会使得程序的效率变低,或者稳定性降低,只是这样作会将很多的名字引入程序,使得程序员使用的名字集合变小,容易引起命名冲突. 在 ...

  4. BFS

    广(宽)度优先搜索算法(Breadth-First-Search):  BFS是从根节点开始,沿着树的宽度遍历树的节点.如果所有节点均被访问,则算法中止.遍历过程如图,一层一层的找(在访问图中某一起始 ...

  5. node09-cookie

    目录:node01-创建服务器 node02-util node03-events node04-buffer node05-fs node06-path node07-http node08-exp ...

  6. hashMap和hashTable的区别

    每日总结,每天进步一点点 hashMap和hashTable的区别 1.父类:hashMap=>AbstractMap hashTable=>Dictionary 2.性能:hashMap ...

  7. 解决VMware虚拟机宿主机与虚拟机通讯慢

    本地连接--> 属性 --> 配置(C) -->高级 页面的属性框中找到"Large Send Offload"(中文名称叫:大量传送减负)==>Disab ...

  8. 虚拟机下CentOS 配置IP地址的三种方法

    1.自动获取IP地址(我不是用的这种方法,不做过多介绍) 虚拟机使用桥接模式,相当于连接到物理机的网络里,物理机网络有DHCP服务器自动分配IP地址. #dhclient 自动获取ip地址命令 #if ...

  9. Learn Git and GitHub without any code!

    What is GitHub? GitHub is a code hosting platform for version control and collaboration.代码托管平台. repo ...

  10. web安全入门书单