En fait, j'ai une vue défilante. Dans ce que j'utilise 30 boutons. Quelle est mon exigence est que je dois réorganiser les boutons. Comme, quand j'ai touché un bouton, il devrait être sélectionné avec notre touche. et partout où nous nous déplaçons dans la vue de défilement, il devrait se déplacer avec notre contact. Une fois le contact terminé, les boutons doivent être intervertis. Quelqu'un peut-il m'aider à ce sujet .........Ne pouvons-nous pas utiliser touchesBegan, touchesMoved, touchEnded pour un scrollview?
0
A
Répondre
0
Vous pouvez faire ce comportement, mais il y a beaucoup de travail. Vous devez ensuite:
1. Créez la sous-classe UIControl qui sera vos boutons.
2. Remplacer toutes les touches * méthodes là.
3. Implémentez là le support du comportement standard d'uicontrol + le comportement de déplacement.
#pragma mark -
#pragma mark Touches delegate methods
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [touches anyObject];
[self performSelector:@selector(delayedTouchBeging:) withObject:touch afterDelay:0.15];
[super touchesBegan:touches withEvent:event];
}
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [touches anyObject];
if (dragging) {
// move your view in new position here
} else {
[super touchesMoved:touches withEvent:event];
}
}
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
if (dragging) {
// Do other stuff if you need
} else {
[super touchesEnded:touches withEvent:event];
}
dragging = NO;
[NSObject cancelPreviousPerformRequestsWithTarget:self];
}
- (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event {
[self touchesEnded:touches withEvent:event];
}
- (void) delayedTouchBeging:(UITouch*) touch {
dragging = YES;
[self cancelTrackingWithEvent:nil];
// Do here stuff about begin moving (animation, etc)
}
0
Vous pouvez regarder la façon dont ils le code « lanceur » comme une partie du catalogue de code Three20 qui est disponible gratuitement. Ils font exactement quelque chose comme ça (et imite la vue des applications iPhone où vous pouvez déplacer des applications ou les supprimer).
Questions connexes
- 1. iPhone: Panoramique pour déplacer une image à l'aide de touchesBegan, touchesMoved et touchEnded
- 2. Comment appeler TouchesBegan, TouchesMoved, TouchedEnded par programme
- 3. touchesMoved: withEvent
- 4. touchesBegan et touchEnded détecté sur une autre sous-vue
- 5. touchesBegan ne répond pas
- 6. Le sélecteur dans un ScrollView ne défile pas
- 7. touchtouchEnded ne reçoit pas d'appel après touchesBegan et touchMoved
- 8. Existe-t-il un moment où les méthodes touchesBegan, touchesMoved et touchEnded seront traitées dans un UIViewController par rapport à UIView?
- 9. ScrollView ne défile pas?
- 10. ScrollView ne répond pas
- 11. ne peut pas dessiner assez vite pour suivre les touchesMoved?
- 12. UIWebView dans un ScrollView ne redessine pas
- 13. touchEnded: ne détecte pas la fin du contact correctement?
- 14. UIView touchesbegan ne répond pas pendant l'animation
- 15. TouchesBegan et TouchesEnded avec le numéro Multitouch
- 16. iphone touchesbegan
- 17. touchesMoved détection UIView
- 18. Les délégués scrollView ne fonctionnent pas (scrollViewDidEndDecelerating)
- 19. Scrollview inside containerView ne défile pas?
- 20. touchesmoved quitter frame
- 21. Iphone Textview n'invoque pas TouchesBegan
- 22. handle touchesBegan méthode pour UITextField dans UIScrollView
- 23. implémenter touchesBegan pour UITextField
- 24. Sous-classe UIViewController ne recevant pas de touchesBegan iphone ipad
- 25. Je ne peux pas voir la propriété UIImageView inside touchesBegan
- 26. Pour utiliser ou ne pas utiliser session_set_save_handler?
- 27. Deux enfants pour ScrollView?
- 28. UIScrollView touchesBegan
- 29. Nouveau sur iPhone SDK: touchesBegan pas appelé
- 30. ScrollView ne défile pas lorsque vous faites glisser les boutons
Quelle partie de vos besoins, vous avez des problèmes avec? – Vladimir