UIView與subview之間事件響應(yīng)鏈
我有如上圖所示的ViewA和ViewB,其中ViewA是superview?,F(xiàn)在我想對(duì)他們添加事件或者手勢(shì)。有如下情況:
1.touch move ViewB,想要ViewA跟著走,或者反過(guò)來(lái),touch move ViewA,想要ViewB跟著走,一種方法。將ViewB(子view)的userinteraction設(shè)置為no。
2.我向ViewA添加了gesture,然后ViewB也得到了響應(yīng)。這是怎么回事有怎么解決呢?
- - (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch {
- if (touch.view != [self view]) {
- return NO;
- }
- return YES;
- }
加入gesture代理方法, 這樣就可以避免 ViewB或者其他的子view響應(yīng)當(dāng)前view的手勢(shì)行為了。
這些都是很簡(jiǎn)單的view的事件傳遞行為,解決起來(lái)很簡(jiǎn)單。自己動(dòng)手寫個(gè)demo就可以很輕松的解決掉。
總結(jié):我的感覺是view之間事件傳遞紐在了一起,就先找到touch。然后找到view,將他們分離開。