摘要:本文将带你了解Android开发之动态设置注意事项,希望本文对大家学Android有所帮助。
在动态给android的字体设置大小的时候,踩过一些坑,特地列出来提醒大家。
1、直接setTextSize(),里面的单位是默认sp的。
2、
TypedArray typedArray = context.obtainStyledAttributes(attrs, R.styleable.TopViewStyle);
textSize = typedArray.getDimension(R.styleable.TopViewStyle_textSize, TypedValue.applyDimension(TypedValue
.COMPLEX_UNIT_PX, context.getResources().getDimension(R.dimen.title_size),
context.getResources().getDisplayMetrics()));
在自定义view的时候,会用到自定义属性,获取自定义的字体大小,如上面代码所示。但是按照这种方式取出来的单位是px的,因此不能直接给setTextSize(),不然显示的大小会发生很大的变化。
3、我们怎么解决这个问题呢?
setTextSize(TypedValue.COMPLEX_UNIT_PX,18); //px
setTextSize(TypedValue.COMPLEX_UNIT_SP,18); //sp
setTextSize(TypedValue.COMPLEX_UNIT_DIP,18);//dip
通过以上的方法指明单位,其实直接设置setTextSize(),参数就是默认TypedValue.COMPLEX_UNIT_SP,上面三行代码最终的字体大小是一样的,只是单位不同,都是18sp转换过去的。
您输入的评论内容中包含违禁敏感词
我知道了
请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号