iOS 彈幕功能的實現思路圖解

這篇文章主要介紹了iOS 彈幕功能的實現思路圖文詳解,本文給大家介紹的非常詳細,具有一定的參考借鑑價值,需要的朋友可以參考下

先來看一張效果圖(LICEcap錄製的有點卡, 湊合看)

理一下大概流程:

接下來實現: 彈幕視圖從底部彈上來, 依次動畫向上滾動, 出屏幕就移除加入重用隊列, 下次使用.

定義相關屬性:

1. 根據彈幕區域, 確定總共需要的彈幕itemView個數(總區域高度/最小高度),並添加到彈幕控件底部

追加一條新數據(由於需要動畫處理, 當前數據動畫完成後才能處理下一條數據,這裏需要定義兩個區:正在處理區和等待處理區)

追加數據並彈出

從處理區取出itemView並初始化其將要展示的位置,計算寬高, 然後遍歷展示區item做動畫, 接下來對將要展示的item做動畫

執行動畫(upOffsetHeight爲要展示的彈幕高度)

.動畫完成後,接着處理:

將展示區的item遍歷, 如果已經徹底移除屏幕了, 就回收到未展示區複用;

將當前繪製好的彈幕更新分區: 未展示區—>展示區

繼續處理等待區數據

大概思路就是這樣.

昨天花了個把小時完成了這個功能,並沒有優化, 僅供參考學習.

Demo地址: https://github.com/Winerywine/BarrageView .git

總結

以上所述是小編給大家介紹的iOS 圖解彈幕功能的實現思路詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回覆大家的。在此也非常感謝大家對神馬文庫網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請註明出處,謝謝!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章