Question

Je voudrais avoir une ellipse similaire à l'application Mail dans mon application iPhone. Une capture d'écran juste pour la référence est ici: http: // dl-client. getdropbox.com/u/57676/screenshots/ellipse.png

En fin de compte, je voudrais l'ellipse avec une valeur numérique centrée sur elle. Est-il préférable d'utiliser un UIImage pour cette tâche? Peut-être moins de frais généraux pour dessiner avec quartz? Si elle est faite avec Quartz, quelqu'un peut-il afficher une solution pour le dessiner?

Était-ce utile?

La solution

Ah, un rectangle arrondi. Ce n'est pas trop difficile à tirer. Vous pouvez utiliser des chemins de Bézier pour obtenir ce que vous voulez. Le code ressemble à ceci:

CGRect rect;
CGFloat minX = CGRectGetMinX(rect), minY = CGFloatGetMinY(rect), maxX = CGFloatGetMaxX(rect), maxY = CGRectGetMaxY(rect);

CGFloat radius = 3.0; // Adjust as you like
CGContextBeginPath(context);
CGContextMoveToPoint(context, (minX + maxX) / 2.0, minY);
CGContextAddArcToPoint(context, minX, minY, minX, maxY, radius);
CGContextAddArcToPoint(context, minX, maxY, maxX, maxY, radius);
CGContextAddArcToPoint(context, maxX, maxY, maxX, minY, radius);
CGContextAddArcToPoint(context, maxX, minY, minX, minY, radius);
CGContextClosePath(context);

Maintenant que vous avez un chemin sur votre contexte graphique, vous pouvez dessiner ou décrire à l'aide des fonctions de CGContextDrawPath et CGContextFillPath.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top