1.今天利用iOS的手勢api寫了一個側滑欄的顯示view的控制器
但是當我把一個控制器側滑欄的view添加到主控制器的view上發現不能響應任何手勢和點擊事件 怎麼想也不明白,沒辦法把側滑欄的改成UIView addSubview上就沒有問題 可以響應手勢和點擊事件,查了很多的資料,最後才知道必須要讓被添加到主控制器的view的控制器成爲主控制器的子控制器,這樣一來控制器上的點擊事件就可以被捕捉了
2.還遇到另一個比較二逼的問題,我上面的黑色的是一張圖片,我在控制器的view上添加了點擊手勢,關閉了黑色圖片的交互
bottom_image.userInteractionEnabled = NO;
發現怎麼點擊黑色圖片也響應手勢事件,可是明明已經關閉了圖片的手勢交互,怎麼可能還傳到上層的view上面去了呢,後來沒辦法只能手勢交互打開,在手勢的代理中判斷當前的view是誰,從而不讓圖片響應手勢
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch{
if ([touch.view isEqual:self.view]) {
return YES;
}
return NO;
}
我也不知道是我理解的錯誤還是怎麼低,圖片的交互關閉了,還可以把手勢點擊事件傳給上層view,誰知道的話希望解答一下,在此表示感謝(以後知曉了,我會把原因寫在後面)