簡體   English   中英

使用NSTimer在屏幕上移動對象

[英]using NSTimer to move objects on screen

我正在構建一個簡單的ios游戲應用程序,其中我必須在屏幕上移動一些對象,並且這些移動的對象會對滑動手勢做出反應,並據此更改其方向。 我沒有為此使用spritekit或任何其他游戲框架,而移動對象的方式是通過觸發每秒觸發60次的NSTimer。 我沒有顯式使用任何線程,所以我猜計時器是由主線程執行的嗎? 計時器觸發的代碼塊根據對象的速度(定義為x / y方向上每個時間單位的像素)更新對象的位置。 一切正常,我快要完成項目了,但是在測試應用程序時,我意識到盡管大多數情況下對象的運動看起來都不錯,但是有時運動還是有些粗糙/斑駁。 我的問題是做這樣的事情是正確的方法,如何改善性能? 使用GCD之類的方法可以解決抖動的問題嗎? (我沒有詳細研究GCD,但如果我知道會有所幫助,我願意花時間在它上面)

謝謝你的幫助 !

我移動對象的方式是觸發NSTimer,每秒觸發60次

我建議不要這樣做。 內置了各種形式的動畫(查看動畫,圖層動畫,CADisplayLink,UIKit Dynamics),當然總會有Sprite Kit。 使用為此目的提供的工具。 當您已經擁有杜卡迪時,不要重塑獨輪車。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM