2012-07-20 12 views
6

परिवर्तनों का पता लगाने के दौरान UIControlEventValueChanged के साथ काम करता है - मुझे चयनित सेगमेंट पर भी स्पर्श का पता लगाने की आवश्यकता है।uisegmentedcontrol पर स्पर्श का पता लगाने के लिए - चयनित सेगमेंट पर भी?

मैं

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

की कोशिश की लेकिन यह कुछ भी नहीं है आग।

क्या किसी चयनित सेगमेंट पर छूने का पता लगाने का कोई तरीका है?

संपादित करें - एक नया सबक्लास बनाने के बिना। ps भी इशारा पहचानकर्ता जब वहाँ

बहुत धन्यवाद

उत्तर

2

खींचें करने की कोशिश कर segmentcontrol स्वीकार नहीं करता है मुझे लगता है कि यह काम करेगा

-(void) touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 
{ 
    NSInteger oldValue = self.selectedSegmentIndex; 
    [super touchesBegan:touches withEvent:event]; 
    if (oldValue == self.selectedSegmentIndex) 
     [self sendActionsForControlEvents:UIControlEventValueChanged]; 
} 
इस मैं एक नया उपवर्ग बनाने के लिए के लिए
+0

... - मैं इसे शुरुआती रूप से – user387184

+0

का उल्लेख करना भूल गया था, आपको टैप जेस्चर रिकॉग्नाइज़र को आईबी में सेगमेंटेड कंट्रोल से कनेक्ट करने में सक्षम होना चाहिए, फिर बस अपनी खुद की विधि - (आईबीएक्शन) सेगमेंट कंट्रोल टच किए गए: (आईडी) प्रेषक को कनेक्ट करें। मुझे यकीन है कि जब भी आप SegmentedControl को स्पर्श करते हैं तो यह विधि आग लग जाएगी। –

+0

..as मैंने उपर्युक्त उल्लेख किया है, किसी कारण से यह काम नहीं करता है - संभवतः bec मैं Xcode 4.3 का उपयोग कर रहा हूं ???? – user387184