塗りつぶしを設定しようとしUIColor
ていますalpha
glassColor = [[UIColor lightGrayColor] colorWithAlphaComponent:0.3].CGColor;
CGContextSetFillColorWithColor(context, glassColor);
...
2 行目は でクラッシュしEXC_BAD_ACCESS
ます。
理由についてのアイデアはありますか?
塗りつぶしを設定しようとしUIColor
ていますalpha
glassColor = [[UIColor lightGrayColor] colorWithAlphaComponent:0.3].CGColor;
CGContextSetFillColorWithColor(context, glassColor);
...
2 行目は でクラッシュしEXC_BAD_ACCESS
ます。
理由についてのアイデアはありますか?
基本的にあなたの問題は、ARCが使用されていないためにUIColorを解放していることです。CGColor 構造を保持する必要があります。次の方法でそれを行うことができます。
CGColorRef aColorRef = CGColorRetain([[UIColor colorWithWhite:0.82 alpha:1.0] CGColor] );
CGContextSetFillColorWithColor(context, aColorRef);
使い終わったら忘れずにリリースしてください。
CGColorRelease(aColorRef);
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];