在android中,如果我从其父视图中移除视图,而在父视图中隐藏子视图(GONE不可见).我知道隐藏的视图仍将保留在内存中,但说到父视图的物理外观会有所不同吗?如果答案没有不同,那是否意味着当我隐藏子视图时,子视图的整个布局在父视图中基本上不存在?

解决方法:

《先去了》看不见的是两件事.

当您使用GONE更改可见性时

This view is invisible, and it doesn’t take any space for layout purposes.

但是另一方面,当您使用INVISIBLE更改可见性时

This view is invisible, but it still takes up space for layout purposes.

所以真正的问题是REMOVE vs GONE

去掉

删除视图时,它将从布局的层次结构中删除.这意味着它不再是其父级的子级.因此,该视图现在可以在任何其他ViewGroup中使用.

去了

当您将可见性更改为GONE时,它变为不可见,并删除了分配的空间,但是它仍然是其父级的子级.因此,它不能在任何其他ViewGroup中使用,因为一个孩子只能有一个父母.

何时使用删除

对我来说,如果要将视图移动到另一个ViewGroup,或者要永久隐藏它,则必须删除该视图.

何时使用GONE

当您要切换可见性时,请在父视图中切换可见性以及为其分配的空间.将可见性设置为GONE后,用户无法区分是否首先存在一个View.

何时使用隐形

与GONE类似,当您想要切换可见性,但又不想在父视图中删除为其分配的空间时.因此,UI看起来就像是被隐藏了.

标签:android

来源: https://codeday.me/bug/20191119/2034911.html

android 移除子view,android-从父视图中移除视图与隐藏视图相关推荐

  1. android 翻转切换view,Android ViewFlipper翻转视图使用详解

    简介 ViewFlipper是Android自带的一个多页面管理控件且可以自动播放!它和ViewPager有所不同,ViewPager继承自ViewGroup,是一页一页的,可以带动画效果,可以兼容低 ...

  2. android 怎么刷新view,android – 如何在ViewPager中刷新当前视图

    我正在使用ViewPager与视图V1,V2,V3 -..我试图通过单击按钮设置每个视图中使用的LinearLayout的可见性.通过此代码,它将更改应用于下一个视图而不是当前视图.例如我在V5上.当 ...

  3. android 代码加view,Android中将View添加至窗口的源码分析

    本文主要内容是讲解一个视图View或者一个ViewGroup对象是如何添加至应用程序窗口中的.下文中提到的窗口可泛指我们能看到的界面,包括一个Activity呈现的界面(我们可以将之理解为应用程序窗口 ...

  4. android 拖动的view,Android实现随意拖动View效果

    项目过程中要实现能在页面中随意的拖动,刚开始实现是用悬浮球的形式进行实现,因为之前项目中用过,实现后发现用户每次安装后,都有权限的限制,甚至有些用户关闭悬浮球权限之后,不知道怎么在手机上打开悬浮球的权 ...

  5. Android扑克牌抽奖View,android自定义层级view,扑克牌堆叠效果,cascadeLayout

    需要自定义一个组件CascadeLayout,让子view可以像拿扑克牌那样的层叠起来,主要实现效果: 为了设置子view之前的偏移距离,这里需要定义子view相对于上一张卡片的的左边距,上边距.然后 ...

  6. android标尺自定义view,android尺子的自定义view——RulerView详解

    项目中用到自定义尺子的样式: 原效果为 因为跟自己要使用的view稍有不同 所以做了一些修改,修改的注释都放在代码中了,特此记录一下. 首先是一个自定义View: public class RuleV ...

  7. android 添加子view,Android基于Window.ID_ANDROID_CONTENT给定id添加子View

    Android基于Window.ID_ANDROID_CONTENT给定id添加子View 这一技术特点在一些视频播放器中比较有用. 例如代码: package zhangphil.demo; imp ...

  8. android 批量查找view,Android Recyclerview实现多选,单选,全选,反选,批量删除的功能

    效果图如下: recyclerview 实现多选,单选,全选,反选,批量删除的步骤 1.在recyclerview布局中添加上底部的全选和反选按钮,删除按钮,和计算数量等控件 2.这里选中的控件没有用 ...

  9. android 日程安排view,RecyclerView 列表控件中简单实现时间线

    时间 时间,时间,时间啊:走慢一点吧- 看见很多软件中都有时间线的东西,貌似天气啊,旅游啊什么的最多了:具体实现方式很多,在本篇文章中讲解一种自定义View封装的方式. 效果 先来看看效果. 分析 软 ...

最新文章

  1. MYSQL查询数据中通讯最多的两个人
  2. putty遇到ctrl+s
  3. [Java] Overrid 方法重写
  4. Mybatis openSession.commit()手动提交数据和openSession.commit(true)自动动提交数据
  5. ubuntu16.04 + kinetic +turtlebot2配置
  6. Matcher类:(转)
  7. android_x86安装时遇到的问题与修改开机分辨率
  8. Linux 邮件服务器 之跟我一步一步来实现一个邮件系统
  9. 硬盘异响(嗑啦嗑啦)的可能原因
  10. word 计算机内存不足,word文档保存提示内存不足怎么办
  11. C++ 头文件「ctype.h」里的:isalpha、islower、isupper、isalnum等函数
  12. 实现div元素在整个屏幕的的垂直居中之translateY(-50%)的利用
  13. Ubuntu 安装字体
  14. 区块链、密码和银行之间的衍生关系
  15. 阿里、腾讯、字节、京东、美团、百度......薪资职级大比拼
  16. 带你认识40G单纤双向光模块-QSFP+ BiDi光模块
  17. Revit标注墙偏移如何简便标注呢?万能标注?
  18. 学习之旅-计算语言学工作者需要了解的数学知识
  19. 什么是搜索引擎蜘蛛机器人?是如何工作的
  20. 网页聊天室的开发笔记

热门文章

  1. WP模板阁怎么样?能买吗
  2. Git命令提交项目代码
  3. oracle加密传输的种子,oracle net manager 数据传输安全步骤详解
  4. 微信开发者工具 缓存目录
  5. 移位寄存器——数电第六章学习
  6. PPT倒计时制作技巧及模板素材下载
  7. 从零构建通讯器--4.3日志打印实战,捋下main函数的调用顺序
  8. 赞美之外,Unity引擎3D引擎存在什么弊病?
  9. 自动化测试框架STAF介绍
  10. 适合孩子观看的十部优国产儿童动画推荐清单!