iOS技术类

IOS UILabel在6或6plus上显示多出一条边框线

2021-11-23  本文已影响0人  iOS劝退师

因为在给UILabel的frame赋值的时候使用float类型的数据,而像素值显示的时候不会显示半个像素的情况, 因此不足一个像素的值就会被忽略掉, 在分辨率较低的机型上不会出现, 而分辨率较高的则不会忽略, 就出现了黑线。也就是说,6或者6plus的分辨率提高了,所以会在float的数值上边不做忽略的工作,给什么数值就展示什么数值。
简单的来说给的float值像素没法展示

打比方,我们的label的width 是20.55,原因可能是因为像素值显示的时候机型版本较低的忽略了.55,而机型较高的则会显示出来,结果就出现了黑线。

解决方案:给把float的值取整。比如

floor(floatValue)
上一篇下一篇

猜你喜欢

热点阅读