J'ai dessiné une forme fermée à l'aide CGContext et rempli d'une couleur par défaut. Je veux changer la couleur de remplissage sur un événement, comment puis-je faire cela? Il n'y a qu'une seule forme fermée dans le contexte.iphone changement couleur de remplissage d'une forme dessinée dans le contexte
Répondre
J'ai essayé beaucoup de choses à faire, mais ne pouvait pas, comment jamais j'accompli la tâche en rappelant drawRect par [auto setNeedsDisplay]. setNeedsDisplay est la méthode de UIView qui appelle la drawRect
Vous pouvez changer la couleur de remplissage en redessinant la forme entière. Comme vous le mentionnez, il suffit d'appeler [self setNeedsDisplay]
et dans votre implémentation drawRect:
changer la couleur de remplissage en fonction de l'événement. Malheureusement, vous ne pouvez pas changer la couleur de remplissage de forme sans la redessiner, mais selon le cas, vous pouvez éviter de redessiner et obtenir l'effet dont vous avez besoin par d'autres moyens comme le changement du mode de fusion. Regardez dans la documentation CGContext pour voir s'il y a quelque chose qui peut adapté à vos besoins.