iOS仿喜馬拉雅FM做的畢業設計及總結(含新手福利原始碼)

發表於2016-05-26

時隔好久都沒上來寫文章了,有人說我遺忘了簡書。其實不然我每天都有看簡書,覺得有意思的我都喜歡或者關注。簡書就像每個人的生活一樣,在這裡我可以看到每個人的故事和努力。

其實仿喜馬拉雅FM很早就開始了,從我剛接觸iOS開始,就開始仿做了一部分,眼尖的人都從我的github找到了那個專案。隨著找到實習iOS工作,仿寫就落下了,但唯一的收穫就是給過去打了一個響亮的耳光,因為剛入門沒注意一些變數的命名,看著以前的view1,view2,button1,button2有一股想哭的衝動。

專案的缺陷很多,除了命名垃圾之外,還有專案框架的搭建也很垃圾,專案目錄結構還算清晰,但在 Finder 中的目錄結構就慘不忍睹了。如果不習慣的可以使用synx使工程目錄和Finder目錄同步。附上簡友教程,在這裡也推薦一篇阿里kuailejim寫的文章:iOS移動端架構的那些事

簡單說一下介面(其實這個專案在當時我看來提高了對iOS的理解,自定義檢視練練手也不錯),先附上學習iOS前專案地址,可以檢視實現它的commits。注意事項:前專案是用CocoaPods管理第三方的,所以不能執行的情況下記得update pods.


首頁

iOS仿喜馬拉雅FM做的畢業設計及總結(含新手福利原始碼)
發現 – 首介面 – 推薦

這個介面主要使用了第三方框架WMPageController,最主要的是使用了MVVM的設計模式,具體請下載原始碼參考。

iOS仿喜馬拉雅FM做的畢業設計及總結(含新手福利原始碼)
發現 – 首介面 – 分類

這個介面在原始碼中是自定義cell(內部button), 反正比我現在想的複雜多了,當時還要計算劃分。實習久了,知識鞏固牢了,讓我現在做的話應該是cell套collectionView。

iOS仿喜馬拉雅FM做的畢業設計及總結(含新手福利原始碼)
發現 – 首介面 – 榜單
iOS仿喜馬拉雅FM做的畢業設計及總結(含新手福利原始碼)
榜單跳轉

這個頁面沒什麼特別的,無非就是自定義cell,但對比之前做的多了跳轉,跳轉的時候注意的地方就是還要根據各個榜單的分類進行相應的跳轉。

首介面跳轉分類頁面

iOS仿喜馬拉雅FM做的畢業設計及總結(含新手福利原始碼)
首介面分類跳轉 – 子分類介面

這個介面使用了WMPageController來實現複用。


主播頁

iOS仿喜馬拉雅FM做的畢業設計及總結(含新手福利原始碼)
主播頁

這個也是使用了自定義cell,三個按鈕回撥cell的代理事件,而進行Controller跳轉主播詳情頁。還有就是複用了tableViewCell的分組頭(viewForHeaderInSection)。對比之前學習版本加了一個主播本地關注的功能。使用的是plist檔案儲存,但伺服器是有欄位儲存關注的,所以不能讓關注按鈕根據伺服器給的欄位value改變selected狀態。

iOS仿喜馬拉雅FM做的畢業設計及總結(含新手福利原始碼)
主播 – 主播詳情頁

這個介面就沒什麼特別了,就是自定義了一個主播頂部頭檢視topView(xib)作為tableView的子檢視。

[self.tableView addSubview:_topView];

self.tableView.contentInset = UIEdgeInsetsMake(300,0,0,0);


個人中心頁

iOS仿喜馬拉雅FM做的畢業設計及總結(含新手福利原始碼)
我的 – 登入介面

這個介面用了別人的素材,超萌的一個登入框。登入介面的資料是在Class-我-Controller-UserAccount.plist檔案中。如果還不清楚先使用賬號:admin ;密碼:admin

iOS仿喜馬拉雅FM做的畢業設計及總結(含新手福利原始碼)
我的 – 個人中心頁

功能沒做什麼,最主要的是下載的聲音和關注的主播這兩個功能(都是通過本地plist檔案儲存資訊)。讓我印象深刻的是為了做好它我在答辯前一天熬夜把下載後本地儲存並本地播放這個功能完善了,但第二天老師竟然沒給我展示這個模組,有種受打擊的感覺。但想想大學四年能認可你的人太少了,畢竟未來的舞臺並不在大學裡面。


寫在後面的話

大學隨著這個畢業設計的完成以及答辯就畫上了圓滿的句號。大學的時光總是很短暫,四年的時間飛逝,程式猿唯一告別單身的機會即將結束,實習期也體驗到了外面社會的殘酷與現實,正好趕上了iOS和Android移動端的末班車,工作異常的難找。因為回學校辦理畢業等繁雜手續不得不辭去上一份iOS實習生的工作。回學校也沒有停下學習,一直在緊跟iOS大牛群中群友的腳步,學習了RunTime入門,Swift語言,甚至開始想了解前端後端的實現。心中早已有計劃就不怕路遠,但路漫漫其修遠兮,總還是需要吃飯的。

在此也順便求份工作,朋友們有工作介紹的可以推我過去。我在廣州,iOS開發也有2年左右的經驗,工作經驗如果算上加班時間,滿打滿算一年多了。工作中的專案多為外包,所以我手上的專案也很多,也做過前公司自己的上線專案。實習階段最大的收穫是團隊開發和xib的快速開發,當然還有就是命名規範化!

注意事項:此原始碼僅適合新手,檢視原始碼過程中出現頭暈目眩,心中有想罵人的衝動等不適情況,請將原始碼放入廢紙簍並清空。

大家好,我是犀牛的畢業設計原始碼,點我可以下載,內部還有兩篇論文參考文件,當然支援我的可以隨意stars!

 

相關文章