2011-04-27 54 views

回答

11

在簡單的層面上,您可以簡單地使用如下的畢達哥拉斯定理方法來計算兩點之間的距離。

double distance = sqrt(pow((x2 - x1), 2.0) + pow((y2 - y1), 2.0)); 

我想你正在使用- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event方法(註冊爲UIResponder和經由[self setMultipleTouchEnabled:YES];接收多個觸摸後),在這種情況下,可以通過提取提供UITouch ES提取CGPoint.x.y值來自NSSet並使用locationInView方法來獲得針對所述觸摸的CGPoint

如果你還沒有使用過這些課程,我會忍不住對讀了起來:

但是,如果你還沒有使用這樣的事情之前,我也建議讀一下Event Handling Guide for iOS文檔給你一個很好的基礎。 (您可能還想退後一步並使用Creating an iPhone Application文檔,因爲這些文檔涉及如何捕獲觸摸事件等相關細節(以及源代碼)。)

+0

感謝您的回覆。我是新來的;我以前只創建過音板。這是我第一個真正的應用程序。你知道我在哪裏可以找到這個教程嗎? – 2011-04-27 20:08:46

+0

@Mike我已經更新了一些額外的參考資料,希望對您有所幫助。 (您可能還想退後一步並使用[創建iPhone應用程序](http://developer.apple.com/library/ios/#referencelibrary/GettingStarted/Creating_an_iPhone_App/_index.html#//apple_ref/doc/uid/TP40007595)docs,因爲這涉及到很多細節(以及源代碼),關於如何捕獲觸摸事件等) – 2011-04-27 21:18:16

+0

好吧,謝謝。 – 2011-04-28 15:30:22

2

當您收到一個觸摸事件,你得到它的xy座標。你可以使用我們在小學學到的那個公式,d = sqrt((x_2 - x_1)^2 + (y_2 - y_1)^2))。這將使您獲得它們之間的像素距離。 iphone4有326 ppi,所以把你得到的距離除以326,你就可以估計觸摸之間的距離,以英寸爲單位。