2012-08-13 18 views
13

कोई भी मेरी मदद कर सकता है कि UIButton का उपयोग करके निम्न विधि को कॉल करने के लिए कार्रवाई कैसे करें।UIButton के लिए लक्ष्य जोड़ें - आईओएस

-(void)navigatePics:(id)sender andIndex:(NSInteger *)index{} 
+0

कृपया कार्यक्षमता की किस प्रकार आप चाहते हैं समझाने। क्या आप किसी को विधि बनाने के लिए {} के बीच लिखना चाहते हैं? या क्या आपको इंटरफेस बिल्डर (आईबी) में इसे जोड़ने में मदद की ज़रूरत है? – MrHappyAsthma

+0

मैं सिर्फ [बटन एडटेक्स्ट: स्वयं क्रिया: @ चयनकर्ता (_this space____) के लिए देख रहा हूं, नियंत्रण नियंत्रण: UIControlEventTouchUpInside]; –

उत्तर

50

उपयोग button.setTag: (NSInteger) प्रणाली को एक टैग के रूप में UIButton के सूचकांक से जोड़ने के लिए।

UIButton *button = ...; 
[button setTag:1234]; 
[button addTarget:self action:@selector(navigatePics:) forControlEvents:UIControlEventTouchUpInside]; 

फिर नेविगेटिक्स में, टैग पढ़ें।

-(void)navigatePics:(UIButton *)sender 
{ 
int index = sender.tag; 
// index = 1234; 
} 
0

यह चाल चलाना चाहिए। यदि आप इस विधि को किसी अन्य उदाहरण पर कॉल करना चाहते हैं तो स्वयं का उपयोग न करें। उस स्थिति में, बस उस उदाहरण का उपयोग स्वयं के स्थान पर करें।

[button addTarget:self action:@selector(navigatePics:andIndex:) forControlEvents:UIControlEventTouchUpInside]; 
+0

मैं सूचकांक मूल्य कैसे पास करूंगा? –

+0

आप इंडेक्स वैल्यू पास नहीं कर सकते ... इसे प्रेषक से प्राप्त करें –

2
UIButton *button = [[UIButton alloc] init]; 
button.tag = 4; //index 
[button addTarget:self @selected(buttonDidTap:)]; 

... 
[button release]; 

-(void)buttonDidTap:(UIButton *)sender{ 
NSInteger index = sender.tag; 
} 
संबंधित मुद्दे