解决安卓中XML文件声明高度 宽度无效的问题
2019独角兽企业重金招聘Python工程师标准>>>
搬砖的时候,需要在popupwindow里嵌套一个ListView用来展示动态菜单。重写了ListView的高度为所有的Item高度之和。 item:
<?xml version="1.0" encoding="utf-8"?><Button xmlns:android="http://schemas.android.com/apk/res/android"android:id="@+id/button"android:layout_width="match_parent"android:layout_height="45dp"android:layout_marginTop="10dp"style="@null"android:maxHeight="45dp"android:background="@drawable/box"android:text="取消"android:textColor="#1a99f3"android:textSize="15sp" />
这里可以看到,我声明了高度为45dp。但是添加到ListView的时候,却发现在手机上显示的高度明显大于45dp。
根据图片我们可以看到,下面三个按钮显示的高度跟第一个显示的高度,差了差不多两倍多的高度。
原来原因在这里:
我们在是使用
inflater.inflate(R.layout.item_popumenu, root, attachToRoot);
来添加到父布局中,但是对于这几个参数却没有去研究。以下是我在网上找到的:
1. 如果root为null,attachToRoot将失去作用,设置任何值都没有意义。
2. 如果root不为null,attachToRoot设为true,则会给加载的布局文件的指定一个父布局,即root。
3. 如果root不为null,attachToRoot设为false,则会将布局文件最外层的所有layout属性进行设置,当该view被添加到父view当中时,这些layout属性会自动生效。
4. 在不设置attachToRoot参数的情况下,如果root不为null,attachToRoot参数默认为true。
其实也看得我云里雾里,但是大概知道解决的方法了。
View view = inflater.inflate(R.layout.item_popumenu, parent, false);
这里的parent一定要填它的父布局,第三个参数设置为false就好了。
转载于:https://my.oschina.net/xiaolei123/blog/839931
解决安卓中XML文件声明高度 宽度无效的问题相关推荐
- 解决IDEA中 XML文件屎黄色背景 的方法
我们在使用IDEA编写MyBatis的.xml文件时,会发现出现一大片的屎黄色背景提示,每次编写代码的时候都感觉很突兀,所以在这里说下如何解决这个问题. 由于IDEA版本的问题,较新版本中相关设置的位 ...
- 解决idea中xml文件报红问题
报错截图: 解决方法: 复制爆红的约束链接 file >>> settings >>> Languages & Frameworks >>> ...
- OpenCV中XML文件和YAML文件的读写
OpenCV中XML文件和YAML文件的读写 代码如下: #include <opencv2/core/core.hpp> #include <iostream> #inclu ...
- 解决tomcat中temp文件夹出现项目的副本的情况
解决tomcat中temp文件夹出现项目的副本的情况 TomcatMyeclipseXMLGoogle 在最近开发过程中出现过这样的情况,当我在myeclipse发布项目的时候,在tomcat的te ...
- android 设置 linearlayout 高度,在RelativeLayout中动态设置LinearLayout高度/宽度
我在RelativeLayout中有一个linearLayout.我需要能够根据屏幕尺寸动态设置线性布局的高度.我有一些困难. 我怎么能做到这一点?在RelativeLayout中动态设置Linear ...
- 去除 IDEA 中 XML 文件 SQL 语句的黄色背景
环境 IDEA 19.1.2 macOS 10.15.3 去除 IDEA 中 XML 文件 SQL 语句的黄色背景 在使用 IDEA 中的 Mapper.xml 写 SQL 语句时,SQL 语句后面会 ...
- 解决spring的xml文件打开没有namespace等操作选项的问题
解决spring的xml文件打开没有namespace等操作选项的问题 第一步:查看自己安装的eclipse的正确的版本号: 打开eclipse,点击help-->about eclipse I ...
- SSM 生成mapper中xml文件:未能解析映射资源:“文件嵌套异常
SSM 生成mapper中xml文件:未能解析映射资源:"文件嵌套异常 参考文章: (1)SSM 生成mapper中xml文件:未能解析映射资源:"文件嵌套异常 (2)https: ...
- 解决python中csv文件中文写入问题
解决python中csv文件中文写入问题 参考文章: (1)解决python中csv文件中文写入问题 (2)https://www.cnblogs.com/harrymore/p/10063775.h ...
最新文章
- Elasticsearch1.x 基于lc-pinyin和ik分词实现 中文、拼音、同义词搜索
- 【LDA学习系列】Beta分布Python代码
- 错误:Type javax.xml.bind.JAXBContext not present
- [转载]C#多线程学习(一) 多线程的相关概念
- 零基础 5 分钟上手,程序员喜提 AIoT 新利器!
- json解析库go-simplejson使用
- (转载)Web各大服务器区分(整理)
- 网吧服务器维护工具,某某网吧专用维护工具(网吧维护管理助手)V5.1 最新版
- 学计算机的装系统都不会,为什么刚买的新电脑,却不支持安装Win7系统,背后的真实原因...
- php验证码 失效,php验证码无法显示的解决方法
- H3C-云计算技术专题培训(分享七)
- HDS VSP/VM高端存储更换电池
- ROS中的diagnostics模块
- 已购买阿里云CDN流量包仍旧扣费的原因及解决方法
- 2022渗透测试-面试题目大全
- 【历史上的今天】3 月 28 日:EPROM 的发明者出生;计算机进入艾滋病研究领域
- 巴菲特弃用 20 美元的三星翻盖,换上了 iPhone
- PIC单片机该怎么加密
- Kali入侵Windows主机
- Java 在CS客户端做网页连接
热门文章
- Python描述性统计
- 51nod 1435 位数阶乘
- jQuery formValidator表单校验代码生成器ver1.1,一键产生所有代码
- leetcode练习--字符串中第一个唯一字符
- pycharm conda 环境 切换 linux_windows配置wsl2环境+pycharm指路
- java的字符串复制_我应该如何复制Java中的字符串?
- mysql工具记录用户的查询语句_MySQL数据库的常用命令语句记录——安全用户语句及函数...
- java设置时间_怎么用java设置系统时间?
- opencv 光线影响_在OpenCV中使用色彩校正
- android studio左边选择渠道,AndroidStudio简单使用(二):左侧Structure