我正在處理以5秒爲單位處理設備動作事件和更新界面的應用程序。我想嚮應用程序添加一個指示器,以顯示應用程序運行的總時間。似乎像秒錶一樣的計數器,就像本機iOS時鐘應用程序一樣,是計算應用程序運行時間並將其顯示給用戶的合理方式。向iOS應用程序添加正在運行的countup顯示計時器,如時鐘秒錶?
我不確定的是這種秒錶的技術實現。下面是我在想什麼:
,如果我知道如何界面更新之間的長,我能事件之間加起來秒,並保持幾秒鐘的時間算作一個局部變量。或者,間隔0.5秒的計時器可以提供計數。
如果我知道這個應用程序的開始日期,我可以在本地變量轉換爲日期使用
[[NSDate dateWithTimeInterval:(NSTimeInterval) sinceDate:(NSDate *)]
我可以使用一個NSDateFormatter用時短的風格各接口更新到更新的日期轉換使用
stringFromDate
方法的字符串方法生成的字符串可以分配給接口中的標籤。
結果是秒錶針對應用程序的每個「滴答」更新。
在我看來,這個實現有點太重,不像秒錶應用程序那樣流暢。是否有更好,更具互動性的方式來計算應用程序運行的時間?也許iOS已經爲此提供了一些東西?
定義「太重」,「不太流暢」和「更具交互性」。你想解決什麼問題? – Jim
太重了,我的意思是說應用程序正在做很多計算,而且我讀過日期操作涉及日期格式化程序或日曆是「昂貴」的操作。我想減少秒錶的每次更新日期計算的開銷 –