我正在尝试将填充UIColor
设置为alpha
glassColor = [[UIColor lightGrayColor] colorWithAlphaComponent:0.3].CGColor;
CGContextSetFillColorWithColor(context, glassColor);
...
第二行与EXC_BAD_ACCESS
崩溃。
关于为什么的任何想法?
答案 0 :(得分:3)
在ARC中尝试使用
UIColor *glasscolor = [UIColor colorWithRed: red
green: green
blue: blue
alpha: your alpha value];//
[view setBackgroundColor:glasscolor];
非常浅灰色的例子
UIColor *glasscolor = [UIColor colorWithRed:0.945 green:0.945 blue:0.945 alpha:1.0]
[view setBackgroundColor:glasscolor];
答案 1 :(得分:3)
基本上你的问题是ARC正在释放UIColor,因为它没有被使用。您需要保留CGColor结构。你可以通过以下方式完成。
CGColorRef aColorRef = CGColorRetain([[UIColor colorWithWhite:0.82 alpha:1.0] CGColor] );
CGContextSetFillColorWithColor(context, aColorRef);
一旦使用完毕,不要忘记发布它:
CGColorRelease(aColorRef);