2012-08-09 74 views
0

要指示距離,我在MKMapview頂部繪製一個圓。如何將視圖的觸摸傳遞給它的父映射

問題是圓圈擋住了MKMapview。當那個圓周圍的時候,我無法輕鬆放大或縮小MKMapview。

我該如何告訴cirlce只是將所有觸摸事件傳遞給父項,即MKMapview。

+0

你是如何畫圓的? UIView的? – Selkie 2012-08-09 03:52:43

+0

我的程序員做到了。基本上我們把另一個UIView放在MKMapview之上。它不一定是一個圓圈。它可能是Micky Mouse的圖片。 – 2012-08-09 05:02:13

回答

1

如果你的圈子是UIView的實例可以在其上簡單的禁用的用戶交互:

circle.userInteractionEnabled = NO; 

這樣的圈子不會接收任何觸摸事件和的MapView將處理它們。

+0

我投了兩個票。讓我們看看哪一個有效。 – 2012-08-09 05:03:22

+0

這可能不是您想要的:「如果設置爲NO,則用於視圖的用戶事件(如觸摸和鍵盤)將被忽略並從事件隊列中移除。 – Julien 2012-08-09 05:53:20

+0

它們實際上並沒有被移除,下面的視圖會接收到觸摸,您可以輕鬆地測試它。 – myell0w 2012-08-09 16:50:01

1

UIView方法請看:

- (BOOL)pointInside:(CGPoint)point withEvent:(UIEvent *)event 

-hitTest:withEvent:文檔:

「如果pointInside:withEvent:方法返回YES,那麼子視圖的層次遍歷;否則,其視圖層次的分支被忽略。「

相關問題