Je dessine un cercle avec un trait blanc et une couleur spécifiée par une propriété en utilisant ce code:Arrière-plan transparent UIView drawRect cercle
- (void)drawRect:(CGRect)rect {
CGContextRef contextRef = UIGraphicsGetCurrentContext();
CGContextClearRect(contextRef, rect);
// Set the border width
CGContextSetLineWidth(contextRef, 1.5);
// Set the circle fill color to GREEN
CGFloat red, green, blue, alpha;
BOOL didConvert = [_routeColor getRed:&red green:&green blue:&blue alpha:&alpha];
CGContextSetRGBFillColor(contextRef, red, green, blue, 1.0);
// Set the cicle border color to BLUE
CGContextSetRGBStrokeColor(contextRef, 255.0, 255.0, 255.0, 1.0);
// Fill the circle with the fill color
CGContextFillEllipseInRect(contextRef, rect);
// Draw the circle border
CGContextStrokeEllipseInRect(contextRef, rect);
}
L'image que je me regarde en arrière comme ceci:
Comment puis-je supprimer le noir?
Suggestion - se débarrasser des appels à '' CGContextSetRGBFillColor' et CGContextSetRGBStrokeColor'. Au lieu de cela, procédez comme suit: '[_routeColor setFill]; [[UIColor whiteColor] setStroke]; '. Et FYI - les valeurs de couleur doivent être comprises entre 0.0 et 1.0, donc toutes vos valeurs 255.0 devraient être 1.0. – rmaddy