2012-07-20 7 views
6

Während die Erkennung von Änderungen funktioniert mit UIControlEventValueChanged - Ich muss Berührungen sogar auf ausgewählten Segmenten erkennen.Wie erkennt man Berührungen auf uisegmentedcontrol - auch auf ausgewählten Segment?

Ich versuchte

[onOffSC addTarget:self 
      action:@selector(segmentedControlPushed) 
    forControlEvents:UIControlEventAllTouchEvents]; 

Aber das löst nichts.

Gibt es eine Möglichkeit, Berührungen in einem ausgewählten Segment zu erkennen?

BEARBEITEN - ohne eine neue Unterklasse erstellen zu müssen. ps auch die Gestenerkenner nicht die segmentcontrol akzeptieren, wenn sie versuchen, es zu ziehen dort

Vielen Dank

Antwort

2

Ich denke, das

-(void) touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 
{ 
    NSInteger oldValue = self.selectedSegmentIndex; 
    [super touchesBegan:touches withEvent:event]; 
    if (oldValue == self.selectedSegmentIndex) 
     [self sendActionsForControlEvents:UIControlEventValueChanged]; 
} 
+0

für diese Arbeit will ich eine neue Unterklasse erstellen haben ... - Ich habe vergessen, es anfangs zu erwähnen – user387184

+0

Sie sollten in der Lage sein, Tap Gesture Recognizer mit Segmentierter Kontrolle in IB zu verbinden, dann verbinden Sie einfach Ihre eigene Methode - (IBAction) segmentedControlTouched: (ID) Absender. Ich bin mir ziemlich sicher, dass diese Methode jedes Mal ausgelöst wird, wenn Sie SegmentedControl berühren. –

+0

..wie ich oben erwähnt, funktioniert das aus irgendeinem Grund nicht - möglicherweise Bec Ich verwende Xcode 4.3 ???? – user387184

Verwandte Themen