您可以嘗試使用touchesBegan和touchesMoved來獲取觸摸的座標,然後檢查這些座標是否位於地圖上的對象內。爲了得到這些座標,使用方法:
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [touches anyObject];
CGPoint touchedPoint = [touch locationInView:self.view];
//now you can use touchedPoint.x and touchedPoint.y for the coordiantes of the touched point.
}
同樣,你可以使用
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [touches anyObject];
CGPoint touchedPoint = [touch locationInView:self.view];
}
也存在touchesEnded和touchesCancelled。您可以使用這些來獲取觸摸的座標,然後由您來解釋這些點。你可以近似矩形爲每個部分翻轉,這將使這很簡單,但如果你有一個地圖與預期的功能作爲JavaScript地圖,你會需要更復雜的形狀,將不得不使用其他方法來定義形狀。
@WolfLink:對不起,我應該提到這是一個使用支持觸摸功能的設備(如iPad/iPhone/Android)查看的Web應用程序/網站,任何解決方案都需要基於Web技術。 – Gsims