歌詞同步小控件

     我在作仿豆瓣音樂播放器這個小項目的時候,須要實現歌詞同步匹配。json

     它的主要內容有: api

      1.我用到的歌詞匹配API是歌詞迷的API,它提供了三種歌詞檢索方式,歌曲名,歌手和歌曲名,歌曲專輯編號。(連接:http://geci.me/api/lyric/:song/:artist)。它返回的是json數據,請求方式是get方式。數組

注意:在更改歌曲名稱等參數的時候,須要將中文編碼一下,不然會報錯。網絡

      2.經過afnetworking發送網絡請求,解析json後拿到歌詞請求地址,將lrc文件存到指定沙河目錄下。因爲lrc文件格式是時間加字符串,經過分割字符串的方法,將獲得的data分割爲一個time的數組和一個時間和歌詞相對應的字典。這部分經過在model中操做完成。字體

      3.將獲得的時間數組和字典傳給tableview,將歌詞數據加到tableview上。初始化一個每0.1秒調用的nstimer來檢查歌曲當前播放時間,經過判斷當前歌曲時間是否在對應時間數組行值和下一行的時間值之間,而後經過tableview的scrollrow方法調用NSIndexPath來使cell滑動至下一行,而且更新tablview,從而實現列表數據更新。若是顯示的是當前行歌詞,設置cell行的字體顏色和大小爲紅色和比非當前行大一點地字體大小,顯示區別。編碼

相關文章
相關標籤/搜索