我有一个UITextView,可在其图层上设置边框宽度,边框颜色和角半径属性,并且外观看起来很棒。但是,边框的内部不像外部那样具有圆角,并且看起来很有趣。有没有办法使边界的内角变圆?
编辑:
这是我在initWithFrame:
方法中使用的代码:
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
self.backgroundColor = UIColorFromRGB(0xdedede);
self.layer.cornerRadius = kTextFieldCornerRadius;
self.layer.borderColor = UIColorFromRGB(0xD4974C).CGColor;
self.layer.borderWidth = 3.0f;
self.font = [UIFont fontWithName:@"HelveticaNeue-Bold" size:12.0f];
[self setClipsToBounds:YES];
[self.layer setMasksToBounds:YES];
}
return self;
}
这是现在的屏幕截图:
请注意,外部拐角已按预期倒圆角,但边框的内部拐角却是尖角而不是倒圆角。这就是我要解决的问题。谢谢你的帮助!
最佳答案
尝试设置这个
[txtView setClipsToBounds:YES]; //Confirms subviews are confined to the bounds of the view
[txtView.layer setMasksToBounds:YES]; //Confirms sublayers are clipped to the layer’s bounds
编辑
在您的情况下,kTextFieldCornerRadius的值可能设置为较低。
如果我设置
kTextFieldCornerRadius = 7;
,我可以得到完美的输出。尝试增加半径值。
关于ios - CALayer内边界角半径,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20258278/