我在寫一些應用程序。我在那裏有一些自定義視圖。在視圖中有一個調用「setNeedsDisplayInRect」方法的計時器。我需要該計時器對動畫的目的非常冒犯(沒有非常複雜的動畫)。我已經設置了定時器的值:0.0001。這個價值不是太大嗎?該應用程序正常工作。什麼是NSTimer對象的最佳值?
0
A
回答
5
請勿爲此使用NSTimer
。使用CADisplayLink
。它將以設備的最佳速率運行。
設置它是這樣的:
self.displayLink = [self.view.window.screen displayLinkWithTarget:self selector:@selector(setNeedsDisplayForMyView)];
[self.displayLink addToRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
,並定義一個方法setNeedsDisplayForMyView
:
- (void)setNeedsDisplayForMyView
{
[self.view setNeedsDisplayInRect:self.dirtyRect];
}
+0
很不錯,這個班 –
0
如果你正在做動畫你試過核心動畫或動畫的UIView?這可能會比使用計時器自己動畫更容易一些。
相關問題
- 1. 最佳匹配額定配對的最佳方式是什麼?
- 2. 測試WebdriverIO「瀏覽器」對象的最佳方法是什麼?
- 3. 通過對象共享數據的最佳設計是什麼?
- 4. 將JSONObject轉換爲域對象的最佳方法是什麼?
- 5. 聲明對象的最佳方式是什麼?
- 6. 訪問Photoshop智能對象的最佳方式是什麼?
- 7. 什麼是從對象記錄數據的最佳技術?
- 8. 處理django模型對象的最佳方式是什麼?
- 9. 跨層/層處理對象圖的最佳方法是什麼?
- 10. 實例化許多JavaScript對象的最佳方式是什麼?
- 11. 在Memcached中存儲ActiveRecord對象的最佳方式是什麼?
- 12. 將R對象導入Python的最佳方法是什麼?
- 13. 什麼是存儲持久對象數組的最佳方式?
- 14. 將Scala對象寫入Parquet的最佳方式是什麼?
- 15. Java:什麼是讀取序列化對象的最佳方法?
- 16. 什麼是可視化對象狀態的最佳方式?
- 17. 劃分兩個TimeSpan對象的最佳方式是什麼?
- 18. 將XML轉換爲Java對象的最佳做法是什麼?
- 19. 將函數放入對象的最佳方法是什麼?
- 20. 什麼是訪問活動中SQLiteDatabase對象的最佳方式
- 21. 春季鎖定域對象的最佳做法是什麼?
- 22. 什麼是包裝對象的最佳pythonic方式?
- 23. 實例化JavaScript對象時的最佳做法是什麼?
- 24. JPA什麼是獲取摘要對象的最佳方式?
- 25. 操縱JavaScript對象的最佳方式是什麼?
- 26. 設置Symfony對象的默認值的最佳方法是什麼?
- 27. 在javascript對象中,獲取值的屬性的最佳方法是什麼?
- 28. 從PHP中的$ _POST對象獲取鍵/值的最佳方式是什麼?
- 29. 比較兩個Properties對象中的值的最佳方法是什麼?
- 30. 從對象中獲得長期價值的最佳方式是什麼?
你有沒有看過動畫,以每秒十萬幀的速度渲染?因爲這正是你目前所要做的......幸運的是,runloop和繪圖系統都不允許你這麼做,所以你只是在燒製你正在嘗試的處理週期的一小部分**。除此之外,請參閱rob's或Randall的答案,並且在螺絲刀適當的情況下不要使用錘子。 – danyowdee
那是對的))想過那個,改成1.0/60.0 – Nikita