关于ui控件库的一个疑问~

我在使用新的UI控件库时遇到一个问题:假如我的Layout下有20个UIButton,那么我就必须对这20个UIButton添加20句事件监听代码才能触发相应的回调函数对吧?
假如确实是这样的话,那我有个建议,希望新版本中能对UI架构引入事件流机制,举个例子:我只需要为最顶层的Layout添加一条事件监听代码,然后在回调函数中通过
判断不同的目标对象的名字或者Tag来响应不同的控件,这样就会轻松很多,不知道目前最新的版本中是否已经有了这个机制,如果有的话我该怎么做呢?谢谢了~

你看源码,其实用这个ui库,其实监听事件是在他们的顶层uilayer的,然后它来根据哪些空间添加了监听功能,来判断点击的是否是自己区域,来出发uibutton事件的

哦,这样就比较麻烦了。其实做成冒泡机制会好一点:假设判断到有一个uibutton被点击了,那么应该遍历所有它的父级(从它自己开始)直到顶级的Layout,一旦发现哪个父级控件注册了事件监听,就调用相应的回调函数。这样一来就只需要为Layout添加一个事件监听就够了,而不是为每个控件都单独添加一条监听代码。