我知道可以通过设置UIView图层的borderWidth和borderColor属性来自定义整个边框,但是现在我只想更改边框的边缘,有人知道怎么做吗?
最佳答案
我认为一个简单的解决方案是在视图的CALayer上添加一个子层来模拟边框,例如:
float borderWidth = 5.0;
CALayer *mockBorder = [CALayer layer];
[mockBorder setBorderColor:[[UIColor blueColor] CGColor]];
[mockBorder setBorderWidth:borderWidth];
[mockBorder setFrame:CGRectMake(-1.0 * borderWidth,
0.0,
yourView.frame.size.width + 2 * borderWidth,
yourView.frame.size.height + borderWidth)];
[[yourView layer] addSublayer:mockBorder];
上面的示例模拟仅边界。通过在CGRectMake中调整参数,您可以创建各种组合,例如上+左,上+下等。
当屏幕旋转时,请不要忘记更新子图层的框架。
关于iphone - 如何自定义UIView的单个边缘?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7513282/