3

我正在使用最新的 SDK 开发一个 iOS 应用程序。

我想CALayer在 an 里面添加一个UIView,这CALayer将小于UIView. 我想模拟某种边距。

static int const NSLayerX       = 0;
static int const NSLayerY       = 0;
static int const NSLayerWidth   = 60;
static int const NSLayerHeight  = 60;

- (void)setBackgroundLayer:(UIColor*)startColor endColor:(UIColor*)endColor cornerRadius:(int)radius
{
    backgroundGradientLayer  = [CAGradientLayer layer];
    backgroundGradientLayer.frame = CGRectMake(NSLayerX, NSLayerY, NSLayerWidth, NSLayerHeight);
    backgroundGradientLayer.cornerRadius = radius;
    backgroundGradientLayer.colors =
    [NSArray arrayWithObjects:(id)[startColor CGColor], (id)[endColor CGColor], nil];
    [self.layer insertSublayer:backgroundGradientLayer atIndex:0];
}

但我不知道如何将其设置为居中。

我必须更改 NSLayerX 和 NSLayerY 的值吗?

4

1 回答 1

1

分配层的框架如下。

backgroundGradientLayer.frame = CGRectMake(self.frame.size.width/4,  self.frame.size.height/4, self.frame.size.width/2, self.frame.size.height/2);
于 2013-08-13T13:14:17.590 回答