जवाबों:
कॉल को हटाएं: कार्रवाई: forControlEvents:, लक्ष्य के लिए nil पास करें, कार्रवाई के लिए NULL, और सभी बिट्स सेट करने वाले नियंत्रण मास्क का उपयोग करें (UIControlEventAllEvents)।
उद्देश्य सी
[someControl removeTarget:nil
action:NULL
forControlEvents:UIControlEventAllEvents];
स्विफ्ट 2
button.removeTarget(nil, action: nil, forControlEvents: .AllEvents)
स्विफ्ट 3
button.removeTarget(nil, action: nil, for: .allEvents)
@ स्विफ्ट 2 में प्रोग्रेम का जवाब:
button.removeTarget(nil, action: nil, forControlEvents: .AllEvents)
और स्विफ्ट 3:
button.removeTarget(nil, action: nil, for: .allEvents)
नोट: स्विफ्ट के पास नहीं है NULL
, इसलिए मैंने इसकी जगह परीक्षण किया nil
और यह ठीक काम करने लगता है।
removeTarget(nil, action: nil, for: .allEvents)
nil
या तो पास कर सकते हैं, और यह काम करेगा। मेरा मानना है कि दोनों को (या बहुत कम से कम, समान के रूप में मूल्यांकन) के रूप में परिभाषित किया गया है। NULL
(void*) 0
स्विफ्ट:
btnCancel.removeTarget(self, action: Selector(), forControlEvents: UIControlEvents.AllEvents)
स्विफ्ट 2:
actionButton.removeTarget(nil, action: nil, forControlEvents: .AllEvents)
स्विफ्ट 3 और 4:
actionButton.removeTarget(nil, action: nil, for: .allEvents)
उद्देश्य सी:
[actionButton removeTarget: nil action: NULL forControlEvents: UIControlEventAllEvents];
आशा है ये मदद करेगा।
- removeTarget:action:forControlEvents:
यह विधि घटनाओं के वितरण को निर्दिष्ट लक्ष्य वस्तु पर रोकती है।
लक्ष्य पैरामीटर में एक मान्य ऑब्जेक्ट निर्दिष्ट करते हुए , यह विधि निर्दिष्ट घटनाओं की डिलीवरी को उस ऑब्जेक्ट से जुड़े सभी एक्शन तरीकों से रोकती है।
लक्ष्य पैरामीटर के लिए शून्य निर्दिष्ट करना , यह विधि उन घटनाओं के वितरण को सभी लक्ष्य वस्तुओं की सभी क्रिया विधियों से रोकती है
उद्देश्य सी:
[_myButton removeTarget: //any validObject (or) nil
action:nil
forControlEvents:UIControlEventAllEvents];
तेजी से:
myButton.removeTarget(*validObject or nil*, action:nil, forControlEvents:UIControlEvents.AllEvents)
अधिक जानकारी के लिए https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIControl_Class/index.html#//apple_ref/occ/instm/UIControl/removeTarget:action:forControlEvents :