您的位置:首页 > 其它

安卓开发之TextView使用lineSpacingExtra时由于手机系统在5.1.1以下版本最后一行也会有距离的处理

2017-12-07 15:25 375 查看
提示:

1、因为发现这个东西也跟着手机系统的不一样而不一样,目前发现在5.1.1系统以下会出现,
所以我就在代码中动态判断设置padding来解决。

2、首先普及一下,如果需要textview中不需要默认的padding的话
则在xml布局文件添加includeFontPadding属性 设置为false即可


正题:

1、我发现在布局文件加:lineSpacingExtra之后textview看起来就不居中了,然后我就加个背景色查看发现是因为最后一行出现了间距,如下:

<TextViev
style="@style/tv_w_w_s24_c_66"
android:layout_gravity="center"
android:gravity="center_vertical"
android:includeFontPadding="false"
android:lineSpacingExtra="@dimen/d8px" />


2、在7.0系统时发现是正常的。不会有下面的间距,所以之后我就根据系统的版本判断来确定,给paddingTop加上和lineSpacingExtra同样的距离大小来居中整个textview

/*
版本5.1.1相对于22,所以直接判断如果版本小于或者等于22就给他设置paddingtop
其他版本不需要设置即可!
*/
if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.LOLLIPOP_MR1) {
tv.setPadding(0, Utils.dp2px(mContext, 4), 0, 0);
}


在这里做个记录!有碰到的可以看看!

4000
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐