Activity通过setContentView()方法来设定它的布局文件,而布局文件一般都是一个viewGroup,ViewGroup是一个view的容器,可以放置很多个View,常见的有LinearLayout RelativeLayout等等。View的继承关系如下:View -> ViewGroup -> 各种Layout。
我们有时需要改变一个Activity的布局文件,即多次调用setContentView()方法。这时可能会碰到如下异常:
The specified child already has a parent
原因:
当在一个Activity里执行setContentView(R.layout.parent)后,再进行一遍setContentView(R.id.child)
LayoutInflater inflater = getLayoutInflater();
RelativeLayout parent = (RelativeLayout) inflater.inflate(R.layout.activity_main, null);
ImageView child = (ImageView)parent.findViewById(R.id.child);
setContentView(parent);
setContentView(child);
说明这个特定的child已经有一个parent了,你必须在这个parent中首先调用removeView()方法,才能继续你的操作。在setContentView(child)之前调用 parent.removeView(child)即可
LayoutInflater inflater = getLayoutInflater();
RelativeLayout parent = (RelativeLayout) inflater.inflate(R.layout.activity_main, null);
ImageView child = (ImageView)parent.findViewById(R.id.child);
setContentView(parent);
parent.removeView(child);
setContentView(child);

搬迁学习笔记2——The specified child already has a parent的解决方法相关推荐

  1. FPGA 学习笔记:Vivado 生成的 Bitstream bit 文件 超大的解决方法

    前言 最近学习FPGA,使用Vivado,照着开发板例程,写了个流水灯的Verilog程序,配置好引脚约束后,下载到开发板,发现下载的速度有点慢,我一查看 生成的 bit文件,发现竟然接近11MB. ...

  2. Polyworks脚本开发学习笔记(十九)-将数据对象与参考对象对齐的方法

    Polyworks脚本开发学习笔记(十九)-将数据对象与参考对象对齐的方法 把开发手册理了一遍,发现还有几个点没有记录下来,其中一个就是使用点对的粗对齐和使用参考目标的精确对齐.为了把这个学习笔记凑够 ...

  3. 学习笔记_关于switch在whlie中无限循环的解决办法_C语言

    学习笔记_关于switch在whlie中无限循环的解决办法_C语言 今天在做作业的时候突然发现一个问题 #include<stdio.h> int main() {int a;while( ...

  4. 【笔记】Error while loading PyV8 binary: exit code 1解决方法

    [笔记]Error while loading PyV8 binary: exit code 1解决方法 参考文章: (1)[笔记]Error while loading PyV8 binary: e ...

  5. 【Linux笔记】CentOS下找不到eth0设备的解决方法

    [Linux笔记]CentOS下找不到eth0设备的解决方法 参考文章: (1)[Linux笔记]CentOS下找不到eth0设备的解决方法 (2)https://www.cnblogs.com/ly ...

  6. UE4笔记-UStructToJsonObjectString首字母自动转换为小写的问题及解决方法

    UE4笔记-UStructToJsonObjectString首字母自动转换为小写的问题及解决方法 参考文章: (1)UE4笔记-UStructToJsonObjectString首字母自动转换为小写 ...

  7. 微信开发学习 问题1: 网页授权问题 “该连接无法访问” 解决方法

    微信开发学习 问题1: 网页授权问题 "该连接无法访问" 解决方法 参考文章: (1)微信开发学习 问题1: 网页授权问题 "该连接无法访问" 解决方法 (2) ...

  8. Ubuntu16.06 单Nvidia显卡 深度学习运行时 界面卡顿(刷新慢)的解决方法

    关于Ubuntu单Nvidia显卡 深度学习运行时 界面卡顿(刷新慢)的解决方法 背景 我在按照 本链接 的第二种方法安装后,成功安装cuda 10.0与cudnn之后,在深度学习训练过程中发现了严重 ...

  9. Opencv3编程入门学习笔记(三)之访问图像像素的三种方法

    访问图像像素的三种方法:指针访问,迭代器访问,动态地址访问.访问最快的为指针访问,以下算法在几毫秒,但指针访问容易造成内存泄漏:其次为迭代器访问:最后为动态地址访问. 以下程序是根据<OpenC ...

最新文章

  1. 小松卡特彼勒无人驾驶_运输量突破20亿吨,卡特彼勒无人驾驶矿卡迎里程碑时刻...
  2. SAP中Product Orders(生产订单)相关函数BAPI
  3. bbs mysql_简单BBS程序(需MySQL支持)
  4. Mysql数据库(一)——mysql数据库初体验
  5. jzoj3512-游戏节目【树状数组,双向dfs】
  6. 线性插值算法实现图像_C程序实现插值搜索算法
  7. 金山笔试题-字符串排序 : 写一个函数,实现对给定的字符串(字符串里面包括:英文字母,数字,符号)的处理...
  8. 《iOS编程指南》——导读
  9. 使用 show status 命令
  10. python实现图灵机器人帮你回复微信好友消息
  11. iview select 内存泄漏_Vue遇到的内存泄漏排查处理
  12. mysql 存储session
  13. 063 模块的四种形式
  14. 产品01]-产品经理初步认知-产品经理定义/职责/分类
  15. 从iRedMail 创建web服务学习Nginx
  16. postgresql源码学习(38)—— 备份还原② - do_pg_stop_backup函数
  17. 具体怎么使用视频播放屏幕的感重力切换横竖屏
  18. SQL 中文首字母提取与自定义排序
  19. 独家爆料!在美团搞安全,是种怎样的体验?
  20. 批量将多张图片的宽度和高度同时缩小一半,也可以按固定比例缩小

热门文章

  1. Binder死磕到底(四):Treble化架构
  2. 查询Mysql 最近几天,最近几周的语句
  3. 如何让百度和谷歌收录你的博客
  4. 《28天玩转TensorFlow2》第10天:TensorFlow2项目实战—基于迭代的风格迁移
  5. GBase8a基于GDB调试之三——保存文档
  6. nestjs[typeorm学习之多对多表关系探究与使用]
  7. r55600g和i510400选哪个好
  8. 在windows 系统中安装了linux系统双系统,启动后没有windows系统启动界面?
  9. 魔兽分辨率修改器的C语言实现
  10. 访问一个网站都经过哪些步骤_轻松访问电子商务网站的10个简单步骤