Ho un metodo che restituisce l'istanza CGColorRef creata dal metodo CGColorCreate. Ho bisogno di autorelease il ritorno del colore da questo metodo. Qualcuno sa come fare questo?Come autorelease CGColorRef
//red,green,blue are from 0-255 range
+(CGColorRef) getColorFromRed:(int)red Green:(int)green Blue:(int)blue Alpha:(int)alpha
{
CGFloat r = (CGFloat) red/255.0;
CGFloat g = (CGFloat) green/255.0;
CGFloat b = (CGFloat) blue/255.0;
CGFloat a = (CGFloat) alpha/255.0;
CGFloat components[4] = {r,g,b,a};
CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
CGColorRef color = CGColorCreate(colorSpace, components);
CGColorSpaceRelease(colorSpace);
//CGColorRelease(color);
// I need to auto release the color before returning from this.
return color;
}
Pedante: si dovrebbe solo nominare un metodo che inizia con 'get' se ci vogliono i puntatori da compilare come argomenti. Un nome migliore qui sarebbe '+ (CGColorRef) CGColorWithRed: (int) rosso verde: (int) verde blu: (int) blu alfa: (int) alfa' (seguendo il comando dei metodi' NSColor'/'UIColor'). – Wevah