Tirer partie d'un cercle
Pour une application iPhone je veux dessiner un cercle, c'est uniquement pour un x pourcentage rempli.
Quelque chose comme ceci:
Je n'ai pas de problèmes de calcul du rayon, les degrés ou en radians, c'est pas un problème. Aussi dessiner le cercle est déjà fait. Mais comment puis-je obtenir le SDK de l'iPhone pour dessiner la partie qui est rempli.
Je peux dessiner un rectangle de la taille, mais ne fait pas partie d'un cercle.
Je veux juste attirer que sur un contexte normal.
Espère que quelqu'un peut me donner des pointeurs ici.
Vous devez vous connecter pour publier un commentaire.
Utilisation
CGContext
arc fonctions:Consultez la documentation de
CGContextAddArc()
.CGContextMoveToPoint(context, centerX, centerY);
dans la ligne avant.Beaucoup de gens ont de vous montrer comment cela peut être fait dans les Graphiques de Base, mais il peut également être fait avec Core Animation qui donne une grande plus facilement être en mesure d'animer le pourcentage de la tarte à la forme.
Le code suivant va créer de l'anneau et de la partie, rempli de couches (même si vous avez dit que vous avez déjà peut tirer de l'anneau) depuis son agréable d'avoir de l'anneau et de la tarte en forme pour être dessiné à l'aide de la même méthode.
Si vous animez le strokeStart ou strokeEnd propriétés de la pieShape couche, vous aurez le pourcentage d'animer. Comme avec tous les Core Animation code, vous devez ajouter QuartzCore.cadre de votre projet et inclure
<QuartzCore/QuartzCore.h>
dans votre code.Essayez ceci:
J'ai mis en place une tarte à la vue des progrès qui ressemble à ce que vous faites. Il est open source. J'espère que le code source de l'aide.
SSPieProgressView.h source
SSPieProgressView.m source
CircleViewController.h
CircleViewController.m
GraphView.h
GraphView.m
remarque: vous pouvez utiliser l'une des 2 méthodes:
"drawCircleWithCircleCenter" ou "drawCircleWithCircleCenter2"
ce code si vous souhaitez fractionner la cellule sur 2 parties seulement
si vous souhaitez fractionner la cellule sur plus de 2 parties, vous pouvez vérifier ceci : "Dessiner un cercle ,rempli de différentes parties avec des couleurs différentes" et cochez la réponse commencer par cette Phrase "nous avons 6 classe"
Eh bien, puisque personne ne l'utilise NSBezierPath jusqu'à présent, j'ai pensé que je pourrais fournir la solution que j'ai utilisé récemment pour le même problème:
Ci-dessous est une méthode complète je l'utilise le fait avec Graphiques de Base, l'adaptation et l'expansion sur mharper du commentaire ci-dessus.
Ce code est pour OSX de Cacao, mais peut facilement être modifié pour iOS, en modifiant la façon dont vous obtenez le contexte.
Essayer ce code dans une UIView, Exemple "MyChartClass"...
Mise en œuvre dans votre UIViewController
Ce qui concerne.