【问题标题】:ios casting objc pointer to struct cgcolorrefios将objc指针转换为struct cgcolorref
【发布时间】:2012-05-15 08:54:17
【问题描述】:
我启用了ARC,我正在尝试这样做:
CGColorRef outerColor = (id)[UIColor colorWithWhite:1.0 alpha:1.0].CGColor;
我尝试的转换导致错误:
Implicit conversion of an Objective-C pointer to 'CGColorRef' (aka 'struct CGColor *') is disallowed with ARC
我尝试了很多东西,但我不知道如何完成这个演员表。
【问题讨论】:
标签:
objective-c
ios
pointers
automatic-ref-counting
cgcolor
【解决方案2】:
(代表 OP 发布答案)。
我将outerColor 添加到数组中,所以我这样做了:
CAGradientLayer *maskLayer = [CAGradientLayer layer];
CGColorRef outerColor = [UIColor colorWithWhite:1.0 alpha:1.0].CGColor;
CGColorRef innerColor = [UIColor colorWithWhite:1.0 alpha:0.0].CGColor;
maskLayer.colors = [NSArray arrayWithObjects:(__bridge id)outerColor,
(__bridge id)innerColor, (__bridge id)innerColor, (__bridge id)outerColor, nil];