IOS UILabel在6或6plus上显示多出一条边框线
2021-11-23 本文已影响0人
iOS劝退师
因为在给UILabel的frame赋值的时候使用float类型的数据,而像素值显示的时候不会显示半个像素的情况, 因此不足一个像素的值就会被忽略掉, 在分辨率较低的机型上不会出现, 而分辨率较高的则不会忽略, 就出现了黑线。也就是说,6或者6plus的分辨率提高了,所以会在float的数值上边不做忽略的工作,给什么数值就展示什么数值。
简单的来说给的float值像素没法展示
打比方,我们的label的width 是20.55,原因可能是因为像素值显示的时候机型版本较低的忽略了.55,而机型较高的则会显示出来,结果就出现了黑线。
解决方案:给把float的值取整。比如
floor(floatValue)