- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.

    self.yuanjiao.backgroundColor = [UIColor blackColor];
    self.yuanjiao.layer.cornerRadius = self.yuanjiao.frame.size.width/2;
    self.yuanjiao.layer.masksToBounds = YES;
    self.yuanjiao.layer.borderWidth = 5;
    self.yuanjiao.layer.borderColor = [UIColor colorWithRed:1 green:1 blue:1 alpha:1].CGColor;

    //    self.yuanjiao.layer.shadowOffset = CGSizeMake(0, 0);
    //    self.yuanjiao.layer.shadowRadius = 0.0;
    //    self.yuanjiao.layer.shadowColor = [UIColor whiteColor].CGColor;
    //    self.yuanjiao.layer.shadowOpacity = 0.0;
}

影响:

ios - iOS中设置CALayer  'borderWidth'和 'cornerRadius',不能完全覆盖背景-LMLPHP

边框没有完全覆盖背景。

设置 shadowxxx 无效。

最佳答案

这是层属性的预期行为。如果您查看 Apple DocumentationborderWidth 属性,您会发现:-



如果您还需要用 borderWidth 填充 blackColor 部分,那么您有两种选择

  • 有一个颜色与 View 内容没有区别的边框是没有意义的。您将根本看不到边界。你会看到一个更大的圆圈,里面装满了 blackColor
  • 如果你想保留边框并且还需要用黑色填充它,那么将 borderColor 属性分配给 blackColor
  • 关于ios - iOS中设置CALayer 'borderWidth'和 'cornerRadius',不能完全覆盖背景,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31602251/

    10-13 05:26