2009-08-05 4 views
16

J'ai une sous-classe UIControl pour un contrôle de type curseur personnalisé (un qui se comporte différemment d'UISlider). À l'heure actuelle, j'utilise mes propres variables de cible et d'action pour envoyer un message à la cible chaque fois que la valeur du curseur change. Mais cela ne fonctionne pas bien avec les constantes UIControlEvent d'Apple. Je ne savais pas si je devais les utiliser, et si oui, où puis-je mettre ma détection personnalisée "valeur changée"?UIControlEvents et sous-classe UIControl

J'ai outrepassé beginTrackingWithTouch: et continueTrackingWithTouch: pour retourner YES mais l'action n'est jamais distribuée.

+0

Que voulez-vous dire par "utiliser votre propre cible?"? – mk12

+0

Je voulais dire que j'avais mes propres ivars actifs et d'action dans la classe, au lieu d'utiliser ce que UIControl fournit. – hyn

Répondre

29

Chaque fois que la valeur change, vous appelez [self sendActionsForControlEvents:UIControlEventValueChanged] et le contrôle gère le reste.

+1

C'est exactement ce dont j'avais besoin. Merci. – hyn

1

Assurez-vous que vous passez touchesBegan et d'autres méthodes héritées à super classe.

Questions connexes