天天看點

iOS開發拓展篇—音頻處理(音樂播放器2)

說明:該文主要介紹音樂播放界面的搭建。

一、跳轉

1.跳轉到音樂播放界面的方法選擇

  (1)使用模态跳轉(又分為手動的和自動的)

  (2)使用xib并設定跳轉

2.兩種方法的分析

  可以使用模态的方法,添加一個控制器,讓這個控制器和音樂播放控制器類進行關聯,脫線,設定辨別符且在cell的點選事件中執行segue即可。

  步驟說明:

  (1)在storyboard中新拖入一個控制器,然後設定和playing控制器類相關聯。

iOS開發拓展篇—音頻處理(音樂播放器2)

  (2)設定手動跳轉

iOS開發拓展篇—音頻處理(音樂播放器2)

  (3)設定segue的辨別符

iOS開發拓展篇—音頻處理(音樂播放器2)

  (3)跳轉代碼處理

iOS開發拓展篇—音頻處理(音樂播放器2)

不推薦使用模态的原因如下:

    當選中一首音樂跳轉到播放界面進行播放後,如果要跳回到音樂清單界面,那麼最常見的做法是在音樂播放控制器上添加一個按鈕。

    當點選的時候,銷毀這個控制器(dismissed)。但是,控制器銷毀了那麼正在播放的音樂也就随之不在了。

    且由于播放界面控制器的布局是固定的,是以這裡選擇的方法是使用xib進行建立。

3.選擇的方法

  建立一個xib,對應于音樂播放控制器。

  xib的結構如下圖所示:

iOS開發拓展篇—音頻處理(音樂播放器2)

細節:控制器隻需要建立一次,是以建議使用懶加載,當然也可是把播放器設定為單例

iOS開發拓展篇—音頻處理(音樂播放器2)
iOS開發拓展篇—音頻處理(音樂播放器2)

4.xib的内部細節:

(1)已經實作了限制,用于适配ios6和ios7。

(2)設定音樂名稱和歌手的view設定為半透明的,設定方法如下:

iOS開發拓展篇—音頻處理(音樂播放器2)

  設定為30%

iOS開發拓展篇—音頻處理(音樂播放器2)

注意:不要再storyboard中控件的屬性面闆上設定透明度(這樣的話,這個控件中的子控件也是同樣的透明度)。

    不推薦的做法:

iOS開發拓展篇—音頻處理(音樂播放器2)

(3)按鈕點選發光

iOS開發拓展篇—音頻處理(音樂播放器2)

(4)設定view隐藏能夠節省一些性能。(參考代碼)

(5)在切換控制器的過程中,設定視窗不能點選(這樣做是為了防止使用者多次連續的點選歌曲名會出現的問題)。

5.補充:

  項目代碼中拖入了uiview的分類,以友善計算frame

二、涉及到的代碼

在播放控制器的.h檔案中提供一個公共對象方法接口

yyplayingviewcontroller.h檔案

iOS開發拓展篇—音頻處理(音樂播放器2)
iOS開發拓展篇—音頻處理(音樂播放器2)

yyplayingviewcontroller.m檔案

iOS開發拓展篇—音頻處理(音樂播放器2)
iOS開發拓展篇—音頻處理(音樂播放器2)

cell的點選事件中的處理代碼:

iOS開發拓展篇—音頻處理(音樂播放器2)
iOS開發拓展篇—音頻處理(音樂播放器2)

繼續閱讀