0
我有一個菜單控制器,當它彈出時有一個集合視圖。它的工作方式是,當用戶在集合視圖之外輕擊時,它應該使菜單消失。當您在集合視圖之外點按時,菜單會關閉,但當您在集合視圖內點按時,該菜單也會關閉。我似乎無法讓手勢識別器在不在收集視圖內時解散。我在這裏和谷歌環顧四周,我還沒有找到任何解決方案,但工程。下面是該處理抽頭的功能的代碼:無法讓UITapGestureRecognizer識別控制器中的特定視圖
@IBAction func handleTap(sender: MenuTapGestureRecognizer)
{
if (sender.state == .Ended && sender.view == menuCollectionView)
{
NSLog("menuCollectionView")
}
else if (sender.state == .Ended && sender.view == mainView)
{
self.dismissViewControllerAnimated(true, completion: nil)
}
}
mainView
是連接到最上面的圖和menuCollectionView
是參照UICollectionView的參考。
我試圖用做一個檢查,我不斷收到那CGPoint是無法轉換爲ObjC布爾「我假設我檢查這個錯誤,然後 – SamG 2014-10-09 15:35:19
'sender.locationInView(:這是通過以下完成menuCollectionView)將會返回一個'CGPoint',標記你的事件在'menuCollectionView'中的位置。你可以使用'CGRectContainsPoint(menuCollectionView.bounds,sender.locationInView(menuCollectionView))'。 – 2014-10-09 15:39:00
謝謝伊恩,這工作完美!我使用CGRectContainsPoint並直接過濾到集合視圖。 :)被困在那兩個星期了,謝謝! – SamG 2014-10-09 15:50:31