[英]Is there an alternative to using an NSTimer to display remaining time of audio file with AVAudioPlayer?
我用AVAudioPlayer
播放音樂,想要顯示剩余時間。 似乎有很多人認為NSTimer會每秒觸發,但我擔心這樣效率低且容易出錯。 由於NSTimer
不是非常精確的定時(我聽說過),定時器可能會在相同的音頻秒內觸發兩次,倒計時則跳過一秒鍾。 這也是拉模型。
是否有一種更精明的方式, AVAudioPlayer
每次一秒鍾就會調用我的倒計時?
雖然NSTimer是半不准確的,但你仍然可以讓它每隔一秒左右調用一次,並從歌曲的currentTime
屬性中獲取信息,並將其與duration
屬性進行比較。 從那以后你可以計算剩余時間等。
沒有回調可以幫助您在播放音頻文件時更新時間顯示。 NSTimer方法是應該如何完成的。 如果由於NSTimer觸發精度而關注顯示中的不准確性,只需減少計時器的更新間隔。 保持工作負載在您的實現中亮起,並將間隔設置為500毫秒,或者可能是250毫秒......
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.