我有一个UIButton子类,我正在四处走动。使用其图层上常用的cornerRadius
属性,或创建一个圆形蒙版并将其应用于图层,我总是得到下图中显示的效果(炸毁以便您可以清楚地看到它)。顶部像素略微透明,使边缘看起来柔软。如果我删除圆角,边缘会变回实心(就像图像中的下边缘),所以我知道它不仅仅是尝试在像素之间绘制视图。
有什么想法吗?
答案 0 :(得分:3)
确保框架和蒙版完全由不是浮动的整数组成,以防使用地板或ceil以获得最接近的整数舍入为低或顶部。
使用框架CGRectIntegral非常有用。
浮动值会在屏幕上渲染时自动创建一种抗锯齿。
答案 1 :(得分:0)
您看到的是抗锯齿(默认情况下已启用),以使边缘看起来平滑。这是使圆角看起来光滑而不是台阶的唯一方法。如果您想要粗糙边缘,请设置allowsEdgeAntialiasing
和edgeAntialiasingMask