Android中关于线性布局基线对齐
来源:互联网 发布:js 替换标签内容 编辑:程序博客网 时间:2024/05/16 15:52
线性布局及其子类布局中有基线对齐这个特性,即对所有能有基线(即getBaseline()返回正值)的View视图(一般多为TextView子类)默认采用基线对齐。
一般情况下它能很好的帮助我们对齐控件,显得很整洁,如下
可是当我们的文字是多行(或者两个控件之间的字体相差较多)的时候问题就出现了。
可以发现莫名奇妙的不对齐了,甚至有一部分已经在父控件显示范围之外了。
原因就是在于基线对齐。
看这个大图,父控件自动帮我们进行了基线对齐,而基线对齐默认是对齐第一行文字,所以就出现了这种情况。
至于怎么解决有两种方法,一种是为父控件增加 android:gravity="center_vertical"属性,这个属性一旦设置将会覆盖基线对齐的属性设置。
另一种推荐的方法就是明确在父控件声明不需要进行基线对齐 在XML中通过android:baselineAligned="false"或在Java通过 setBaselineAligned(false)来设置。
最终效果如下
有网友从源码角度分析了这个问题,地址为:http://blog.csdn.net/bdmh/article/details/48495583
0 0
- Android中关于线性布局基线对齐
- Android 中解决线性布局无法对齐的问题
- 关于android中线性布局的layout_gravity属性
- 关于Android线性布局与滚动实现
- android中关于布局
- CSS中图片于文本的基线对齐设置
- CSS中图片于文本的基线对齐设置
- 剖析Android线性布局中 Layout_weight(权重)
- 关于Android线性布局中weight属性的一个小发现
- AutoLayout baseLine基线对齐
- baselineAligned 按照基线对齐
- android 布局列表对齐
- Android中关于使用空格对齐文字
- iOS AutoLayout自动布局中级开发教程(7)-底部顶部baseLine基线对齐
- iOS AutoLayout自动布局中级开发教程(7)-底部顶部baseLine基线对齐
- iOS AutoLayout自动布局中级开发教程(7)-底部顶部baseLine基线对齐
- 关于Android线性布局的一个小小的问题
- android布局之线性布局
- android studio 不翻墙更新SDK
- Glide图片加载库的使用
- 如何生成hive的建表语句(批量)
- C++ 笔记2:重载运算符
- sql server中常见的数据类型
- Android中关于线性布局基线对齐
- Android【封装】多线程下载以及断点续传
- 基于BP网络解决异或问题
- 开源大数据查询分析引擎现状
- SQL中as的用法
- try catch finally
- 数据结构学习整理
- JAVA:监控按钮的两种方法
- Slidr