UIButton删除所有目标操作
我已经添加了多个target-action-forControlEvents:到一个UIButton。 我想一次性移除所有这些,而不会释放任何东西。 然后我会设定新的目标。
这是可能的,我该怎么办呢?
调用removeTarget:action:forControlEvents:,向目标传递nil,为动作传递NULL,并使用设置所有位的控制掩码(UIControlEventAllEvents)。
Objective-C的
[someControl removeTarget:nil action:NULL forControlEvents:UIControlEventAllEvents];
Swift 2
button.removeTarget(nil, action: nil, forControlEvents: .AllEvents)
Swift 3
button.removeTarget(nil, action: nil, for: .allEvents)
@程序员在Swift 2中的回答:
button.removeTarget(nil, action: nil, forControlEvents: .AllEvents)
和Swift 3:
button.removeTarget(nil, action: nil, for: .allEvents)
注意:Swift没有NULL
,所以我testing用nil
replace它,它似乎工作正常。
迅速:
btnCancel.removeTarget(self, action: Selector(), forControlEvents: UIControlEvents.AllEvents)
- removeTarget:action:forControlEvents:
此方法停止将事件传递到指定的目标对象。
-
在目标参数中指定一个有效的对象 ,此方法停止将指定的事件传递给与该对象关联的所有操作方法。
-
为目标参数指定nil ,这个方法可以防止这些事件传递给所有目标对象的所有操作方法
Objective-C的:
[_myButton removeTarget: //any validObject (or) nil action:nil forControlEvents:UIControlEventAllEvents];
迅速:
myButton.removeTarget(*validObject or nil*, action:nil, forControlEvents:UIControlEvents.AllEvents)
- 如何禁用React Native中的旋转?
- 有条件的Segue使用Storyboard
- 我怎样才能从度数转换为弧度?
- 在故事板中,如何制作一个自定义的单元格以供多个控制器使用?
- Xcode 6奇怪的Bug:Interface Builder文件中的未知类
- 在执行testing脚本之前,如何在Eclipse中创build并在iOS设备(不是模拟器)上运行Appiumtesting?
- Xcode模拟器非常慢
- 自动布局:什么创build了名为UIView-Encapsulated-Layout-Width&Height的约束?
- 升级到iOS 7的应用程序 – 错误“自动布局在iOS版本6.0以前”(但要iOS 7不老)