1
26
使用 CGRectIntegral 以确保文本字段的框架基于整数坐标。当事情在分数坐标上时,你会得到模糊的反锯齿。 |
2
12
好的,我在回答我自己的问题。 我通过google找到了很多关于这个bug的参考资料,但是每个人都通过玩字体大小来解决这个问题。经过多次狩猎,我发现 this thread 也就是说,当视图的帧包含分数像素值时(例如,如果将其大小计算为超级视图的分数),将应用抗锯齿。 当然,将cgrct值强制转换为(int)可使视图的框架工作得很好。因此,作为一个示例,如果您希望文本字段在SuperView中垂直居中,那么应该使用这样的(int)强制转换: textFieldWidth = 300; textFieldHeight = 31; offsetX = 0; offsetY = (superview.bounds.size.height - textFieldHeight) / 2; textField.frame = CGRectMake((int) offsetX, (int) offsetY, (int) textFieldWidth, (int) textFieldHeight); 还有一个CGRectantegral函数,可以用来将CGRect转换为整数值。 |
3
1
除了使用非小数点定位之外,还应确保对uitextfield使用非中心垂直对齐。看起来居中垂直对齐加上奇数的字体大小也会导致文本模糊。 |
4
0
我很愿意做出贡献,因为我在经历了一段挫折之后,才自己找到了答案。 InterfaceBuilder中的uitextfield强制帧高为31像素。不能单击拖动来调整大小,也不能在ib的框架属性中设置。您需要转到VIEWDIDLOAD并将框架高度调整为32像素,这样可以解决问题。 希望将来版本的ib可以纠正这个问题。 |
5
0
我试过用cgDirectGral之类的东西。在我的例子中,更改了ib中的最小字体大小和字体大小。 |
6
0
我以前遇到过这个问题。下面的解决方案适用于任何文本或帧大小,因为它使用Round函数来去除分数像素值。在实例化相关的uitextfield后插入以下代码。
|
7
0
只需设置
|
Nika Kirkitadze · 集合视图捕捉项布局 2 年前 |
bitops · 在我的UIButton中添加一个圆 6 年前 |
user4992124 · 将循环连续UISlider值转换为计数器 6 年前 |
aunnnn · 如何进行交互式过渡+结束动画? 6 年前 |
KMI · 如何在不缩放Swift中图像的情况下缩放UIButton? 6 年前 |