android:lineSpacingExtra这个属性是用来设置文字的行间距的。但是最近手机升级到了5.0系统,发现单行或者多行的最后一行的下边距少了一块。经过测试得出以下结论



1,在5.0以下的系统中,当我们设置了android:lineSpacingExtra=7dp的时候:



当我们设置了固定距离的行间距的时候,在最后一行会自动添加一个行间距大小的下边距

所以我们在上下对齐的时候,如果我们是通过设置padding来实现的话,那么需要把这部分算进去。

2,在5.0以上的系统(包括5.0)中,当我们设置了android:lineSpacingExtra=7dp的时候:




当我们设置了固定距离的行间距的时候,在最后一行不会自动添加一个行间距大小的下边距

所以在我们上下对齐的时候,如果我们是通过设置padding来实现的话,这部分则不能够计算到其中。


这样造成的问题及时同一个样式在不同的版本当中造成的呈现的结果不一致。


那么,如何解决这种出现的问题那?

我这里提供一个我解决的方法仅供大家参考:

在此控件当中我们采用paddingBottom来这是下边距,这里我们不使用固定的数值而是写到dimens文件当中。

android:paddingBottom="@dimen/linepaddingbutton"
然后我们分版本谁知dimen变量的值:

在values当中的dimens设置linepaddingbutton=0dp

在values-v21 当中的dimens设置linepaddingbutton=7dp

这样就可以解决兼容性的问题实现一致的展现的效果



更多相关文章

  1. Android中指定Action、Category调用系统Activity
  2. Android获取系统屏幕亮/灭屏状态
  3. Android Glide缓存清除与获取缓存大小
  4. android webview设置内容的字体大小
  5. 转:android 调用系统的接口
  6. 一看就会Android之手机系统音量的设置
  7. android中获得系统的时间

随机推荐

  1. Android 自定义标题栏Title Bar
  2. Android (一) Android studio 安装
  3. stagefright
  4. Android消息处理机制2——Message
  5. Android Tab切换表格头
  6. android 来电自动接听和自动挂断
  7. Android之OnGestureListener实现图片的左
  8. Android获取、设置桌面
  9. 常用的android弹出对话框
  10. 2014.01.16(2) ——— android 关于适配的