UIView与subview之间事件响应链

移动开发 iOS
这些都是很简单的view的事件传递行为,解决起来很简单。自己动手写个demo就可以很轻松的解决掉。我的感觉是view之间事件传递纽在了一起,就先找到touch。然后找到view,将他们分离开。

我有如上图所示的ViewA和ViewB,其中ViewA是superview。现在我想对他们添加事件或者手势。有如下情况:

1.touch move ViewB,想要ViewA跟着走,或者反过来,touch move ViewA,想要ViewB跟着走,一种方法。将ViewB(子view)的userinteraction设置为no。

2.我向ViewA添加了gesture,然后ViewB也得到了响应。这是怎么回事有怎么解决呢?

  1. - (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch {   
  2.    if (touch.view != [self view]) {   
  3.      return NO;   
  4.  
  5.    }   
  6.    return YES;   
  7.  }  

加入gesture代理方法, 这样就可以避免 ViewB或者其他的子view响应当前view的手势行为了。

这些都是很简单的view的事件传递行为,解决起来很简单。自己动手写个demo就可以很轻松的解决掉。

总结:我的感觉是view之间事件传递纽在了一起,就先找到touch。然后找到view,将他们分离开。

责任编辑:闫佳明 来源: oschina
相关推荐

2023-10-12 22:44:16

iOS事件响应链

2021-08-04 23:03:56

区块链数字货币数据安全

2017-07-24 14:32:49

2020-11-13 07:31:10

自动化事件安全

2022-09-23 12:07:09

企业安全事件CSIRT

2023-02-27 12:10:53

2018-06-04 23:03:29

2022-02-09 00:08:26

黑客攻击事件响应

2013-04-15 15:22:06

2021-07-02 10:59:39

云计算云计算环境云应用

2023-02-09 12:31:03

2015-01-26 17:25:08

应急响应预案企业安全风险

2021-01-18 08:10:35

安全工具病毒

2011-05-27 14:47:50

友情链接

2022-04-14 16:00:51

事件响应流程企业

2024-11-06 15:33:50

2011-05-20 14:22:11

.NET

2024-02-01 12:38:22

事件流事件溯源系统

2017-04-25 09:04:16

2018-05-23 23:21:10

点赞
收藏

51CTO技术栈公众号