2011-07-12 15 views
7

के टैप किए गए सेगमेंट का पता लगाने के बाद मैंने अपनी XIB फ़ाइल में एक UISegmentedControl रखा है। असल में, जब नियंत्रण का दूसरा टैब टैप किया जाता है (उर्फ सेगमेंट 1, पहला सेगमेंट सेगमेंट 0 होता है), मैं टेक्स्ट फ़ील्ड को खोलना चाहता हूं। मुझे पता है कि टेक्स्ट फ़ील्ड को कैसे खोलें, लेकिन मैं कैसे पता लगा सकता हूं कि सेगमेंट किए गए नियंत्रण के किस हिस्से ने उपयोगकर्ता को टैप किया है?UISegmentedControl

[textField setHidden:NO]; 

उत्तर

11

आपको अपने सेगेटेड नियंत्रण valueChanged को अपने दृश्य नियंत्रक में एक विधि में आईबी में कार्रवाई करना चाहिए जो आपके सेगमेंट किए गए नियंत्रण selectedSegmentIndex की जांच करता है।

3

आप नियंत्रण घटना UIControlEventValueChanged के लिए एक लक्ष्य-एक्शन जोड़ करें और विभाजित नियंत्रण से selectedSegmentIndex जांच होनी चाहिए।

यदि यह 1 है तो टेक्स्ट फ़ील्ड को छुपाएं।

21

नीचे दिए गए जैसा IBAction बनाएं और इसे इंटरफ़ेस बिल्डर में मूल्यबद्ध कार्रवाई से कनेक्ट करें।

- (IBAction)segmentedControlChanged:(id)sender 
{ 
    UISegmentedControl *s = (UISegmentedControl *)sender; 

    if (s.selectedSegmentIndex == 1) 
    { 
     [countTextField setHidden:NO]; 
    } 
} 
संबंधित मुद्दे