2012-06-02 13 views
1

Apple ios開發新手。我想知道使用什麼類型的框架和庫開發遊戲應用程序。主要是想知道如何移動在iphone應用程序中水平對象從一個地方移動到另一個地方。當我點擊該對象時,對象必須水平移動?當用戶點擊對象時如何執行此對象移動?請幫助我這樣做。請給我看一些示例練習他們。請幫我解決這個問題?如何在iphone應用程序中使用動畫將對象從一個地方移動到另一個地方

+0

你已經完成了哪些研究?你試過什麼了? – jrturton

+0

我已經看到了基於曲線路徑的簡單動畫示例。但我不明白任何事情。 – Ratnakar

+0

剛纔我也檢查了developer.apple.com關於我們可以使用核心Animation.Need移動對象來研究它。可以告訴我什麼類型的框架和庫適合使用。-jrturton – Ratnakar

回答

3

這很簡單 - 只需在viewController.m文件中寫下這個方法 這裏,一個按鈕被移動到觸摸UIView的地方。

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 
{ 

    CGPoint pt = [[touches anyObject] locationInView:self.view]; 

    [UIView beginAnimations:nil context:NULL]; 
    [UIView setAnimationDuration:1.0]; 
    //you can change the setAnimationDuration value, it is in seconds. 

    CGRect rect = CGRectMake(pt.x, pt.y, button.frame.size.height, button.frame.size.width); 

    [btn setFrame:rect]; 

    [UIView commitAnimations]; 
} 

現在如果你想將它移到水平再固定y座標和矩形將是listen- ....

CGRect rect = CGRectMake(pt.x, button.frame.origin.y, button.frame.size.height, button.frame.size.width); 

,如果你想將它垂直固定的x座標 - 和直接將

CGRect rect = CGRectMake(button.frame.origin.x, pt.y, button.frame.size.height, button.frame.size.width); 

謝謝!

+1

+1爲偉大的答案:) – Rushabh

0

我假設你在談論2D遊戲,因爲你只提到在屏幕上移動物體。當然,真正的遊戲引擎用於沉重而複雜的遊戲,但從描述來看,並不需要聽起來像你需要它。我還假設你沒有很遠。你可以從iOS中原生的兩種動畫開始,看看它是否足以滿足你的需要。如果我上面的假設是最新的,那麼您可以查看下面包含的參考資料。否則,您可能需要像Cocos2d(我只聽說過,從未使用過)那樣查看平滑。


您首先需要像一個UITapGestureRecognizer知道什麼時候你的對象(我以爲是某種形式的UIView)被竊聽。這將觸發移動動畫的部分。

取決於你想要做多複雜的動畫你應該看看UIView動畫或核心動畫。 UIView-動畫只能動畫視圖的基本屬性(其中一個是視圖的中心),所以如果你只想改變視圖的位置,這對你來說已經足夠了。

我建議你去閱讀文檔:與這種情況最相關的部分是Animations section of the View Programming Guide for iOS。如果您希望製作UIView動畫無法實現的更高級的動畫,則應該查看Core Animation Programming Guide

相關問題