我有一个应用程序,我以恒定的速度闪现字。说它设置为每分钟60次。然后每个单词每个显示1秒。使用NSTimer
很容易实现。
但是,我想让它现在更加智能化。较长的单词显示比较短的单词略长。我已经计算出如何计算这个数学,但我不确定在Objective-C中如何表示一个单词,0.15秒,然后是另一个单词0.18秒,然后是第三个单词0.04秒,等等。,取决于单词的长度。
使用延迟会是最好的方法吗?
答案 0 :(得分:1)
您可以使用performSelector
延迟,但不一定非常容易管理。
您可以使用NSTimer
,重复,并为每个所需的新更新设置fireDate
。这是相对昂贵的,但不如重复创建新的计时器。
您可以将CADisplayLink
与duration
和frameInterval
结合使用,以获得屏幕刷新率倍数的更新。这应该是最高效和最准确的。
但是,总的来说,在你有一些问题的证据和/或做了一些分析之前,你不应该担心性能。请考虑一下您需要哪些功能以及每种解决方案实施起来的容易程度。