1
簡單的物理我有一個用戶通過在touchesMoved:
方法中設置其中心拖動周圍UIView
。當使用者放開,我想UIView
根據他們是如何快速,什麼方向移動它脫落的畫面。的iOS:對於一個UIView
我需要通過UIView
的最後中心點比較以某種方式創建矢量這是新的中心點?並且每隔一段時間用NSTimer
減去一個固定數量到矢量的y值?
簡單的物理我有一個用戶通過在touchesMoved:
方法中設置其中心拖動周圍UIView
。當使用者放開,我想UIView
根據他們是如何快速,什麼方向移動它脫落的畫面。的iOS:對於一個UIView
我需要通過UIView
的最後中心點比較以某種方式創建矢量這是新的中心點?並且每隔一段時間用NSTimer
減去一個固定數量到矢量的y值?
是的,你將需要物理學體面的數額,在計算
您將需要使用touchesMoved
方法與定時器一起跟蹤滑動的時間量以及對象新位置的座標。這應該是相當直接的。一旦你找到了那些你可以簡單地添加一個UIAnimation
對象移動到新的地方。
〜一個建議:
我建議你看看Cocos2D
和庫與您的應用程序集成。你不會需要實現touch delegate
方法和自己計算的東西〜有該圖書館:)它有很多的庫尤其是對移動的物體(或sprites
如果你想打電話給他們這樣),你有一個像easeInEaseOut
動畫方法,這可能會影響運動物體。如果您正在開發某種遊戲,請在Cocos2D中查看chipMunk
引擎。
如果你願意多走一英里有大約[整合物理到的UIKit]一個很好的職位(http://www.cocoanetics.com/2010/05/physics-101-uikit-app-with- Box2D的換重力/)。話雖如此,@Legolas對Cocos2D的建議是一個更完整的解決方案。 – Alladinian 2012-04-07 20:34:41
如果您使用UIPanGesture,您可以在視圖中獲得速度,並且會爲您提供正在拖動某物的速度。以及它被拖動的位置。 – 2012-04-09 00:55:38