边框有背景颜色渗透它

时间:2017-05-19 23:36:17

标签: ios iphone swift xcode swift3

我将背景颜色设置为白色边框,边框渗透到背景中。我希望蓝线消失。你能建议一个解决这个问题的方法吗?

以下是我的代码。并且有一张我正在谈论的内容的图像。

[Border example Image

self.imageView.layer.borderColor = UIColor.white.cgColor
self.imageView.layer.borderWidth = 3
self.imageView.backgroundColor = UIColor.blue
self.imageView.layer.cornerRadius = CGFloat(CircleDiameter/2)

1 个答案:

答案 0 :(得分:2)

我猜这是iOS渲染用图层做的正面cornerRadius,我已经测试添加一个白色圆圈视图重叠一个蓝色圆圈视图,它具有相同的大小,出现相同的情况:

enter image description here

事实上,通过borderWidth Document,图层的边界是从接收者的边界插入的,所以它与我上面提到的情况相同:

  

当此值大于0.0时,图层使用当前borderColor值绘制边框。 通过此属性中指定的值从接收器的边界插入边框。它在接收者的内容和子图层上方合成,并包含cornerRadius属性的效果。

所以iOS上的边框+圆度=悲伤,我认为你需要另一种方式来实现你的设计。