UIControl - 更改分配的选择器:addTarget &删除目标
我在界面中使用了 10 个按钮,并且需要时常更改按钮的选择器。
我是否需要使用:
-(void)removeTarget:(id)target action:(SEL)action forControlEvents:(UIControlEvents)controlEvents
在更改选择器之前或者我可以使用:
-(void)addTarget:(id)target action:(SEL)action forControlEvents:(UIControlEvents)controlEvents
我担心如果我使用 addTarget: 方法更改选择器而不使用 removeTarget: 方法,我基本上会为我的 UIButton“堆叠”选择器按下时即可开火。
I'm using 10 buttons in my interface and need, from time to time, to change the button's selector.
Am I required to use:
-(void)removeTarget:(id)target action:(SEL)action forControlEvents:(UIControlEvents)controlEvents
before I change the selector or can I just use:
-(void)addTarget:(id)target action:(SEL)action forControlEvents:(UIControlEvents)controlEvents
I'm concerned that if I change the selector using the addTarget: method sans the removeTarget: method that I'll essentially "stack up" selectors for my UIButton to fire when it is pressed.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
是的,在将新目标分配给按钮之前,您应该始终删除先前添加的目标。就像这样——
现在如果你这样做,
那么方法 method1 和 method2 都会被调用。
希望这有帮助。
Yes you should always remove the previously add target before assigning the new target to the button. Like this---
now if you do this
then both the methods method1 and method2 will be called.
Hope this helps.
是的,您将需要删除旧的目标/操作,或者将执行旧的和新的操作。
Yes, you will need to remove the old target/action or both the old and new actions will be performed.