如何从子类UIView定义传出事件,以便可以调用UIViewController中的任何委托

时间:2012-07-26 18:07:19

标签: ios events uiview uiviewcontroller interface-builder

我从UIView派生了我自己的View类来处理手势和绘制自己。 我使用Interface Builder在View上放置它的几个实例。

在某些事件中,我想在UIViewController中调用几个委托,就像UIButton :: onTouchUpInside事件一样。我不想设置接口协议并连接IBOutled id实例,如(1)中所示。

我正在寻找所有文档和堆栈溢出,但我没有找到任何关于语法的线索。

那么,Xcode 4.4(刚刚更新)的语法是什么? 由于我已经使用的自定义属性,部署目标将是IOS> = 5.0。

[编辑] 从UIControl中进行子类化确实可以访问TouchUpInside等标准UI事件,但是可以添加自定义命名事件,如“onSomethingElse”吗?

(1)Events for custom UIView

2 个答案:

答案 0 :(得分:2)

我不完全确定你想从这个视图中得到什么,但是如果你想处理像UIButton :: onTouchUpInside事件这样的事情,那么你应该考虑子类化UIControl而不是UIView。它使您可以访问事件,就像UIButton一样。

答案 1 :(得分:0)

如果您发布了您定义的任何自定义事件的NSNotification,您可以在NSNotificationCenter中注册多个侦听器以响应该事件。

您可以通过查找addObserver:selector:name:object:postNotificationName:object:来查看详细信息。