我在寫一些應用程序。我在那裏有一些自定義視圖。在視圖中有一個調用「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. 什麼是mysql的最佳布爾值?
- 3. 對此的最佳查詢是什麼?
- 4. 最佳匹配額定配對的最佳方式是什麼?
- 5. 什麼是重構javascript對象的最佳方式?
- 6. JPA什麼是獲取摘要對象的最佳方式?
- 7. 創建數百個對象的最佳做法是什麼?
- 8. 劃分兩個TimeSpan對象的最佳方式是什麼?
- 9. Java:什麼是讀取序列化對象的最佳方法?
- 10. 什麼是存儲持久對象數組的最佳方式?
- 11. 將XML轉換爲Java對象的最佳做法是什麼?
- 12. 處理django模型對象的最佳方式是什麼?
- 13. 通過對象共享數據的最佳設計是什麼?
- 14. 測試WebdriverIO「瀏覽器」對象的最佳方法是什麼?
- 15. 將R對象導入Python的最佳方法是什麼?
- 16. 訪問Photoshop智能對象的最佳方式是什麼?
- 17. 什麼是訪問活動中SQLiteDatabase對象的最佳方式
- 18. 在Memcached中存儲ActiveRecord對象的最佳方式是什麼?
- 19. 什麼是包裝對象的最佳pythonic方式?
- 20. 將Scala對象寫入Parquet的最佳方式是什麼?
- 21. 實例化JavaScript對象時的最佳做法是什麼?
- 22. 什麼是不在__init中創建對象的最佳方法__()
- 23. 創建Objective-C對象的最佳編程習慣是什麼?
- 24. 什麼是創建SQL Azure對象的最佳方式
- 25. 跨層/層處理對象圖的最佳方法是什麼?
- 26. 實例化許多JavaScript對象的最佳方式是什麼?
- 27. 命名存檔對象的最佳做法是什麼?
- 28. 什麼是類實例中對象的最佳命名風格?
- 29. 春季鎖定域對象的最佳做法是什麼?
- 30. 在redis中存儲對象的最佳方式是什麼?
你有沒有看過動畫,以每秒十萬幀的速度渲染?因爲這正是你目前所要做的......幸運的是,runloop和繪圖系統都不允許你這麼做,所以你只是在燒製你正在嘗試的處理週期的一小部分**。除此之外,請參閱rob's或Randall的答案,並且在螺絲刀適當的情況下不要使用錘子。 – danyowdee
那是對的))想過那個,改成1.0/60.0 – Nikita