在上篇博客中iOS開發(fā)之多圖片無縫滾動組件封裝與使用給出了圖片無限輪播的實現(xiàn)方案之一,下面在給出另一種解決方案。今天博客中要說的就是在ScrollView上貼兩個ImageView, 把ImageView進行交替切換來實現(xiàn)圖片的無限輪播,在輪播時去修改ImageView上的圖片。上一篇博客中是有幾張圖片就實例化幾個ImageView, 然后事先把Image貼到相應(yīng)的ImageView上,這種做法比較簡單,而且易于實現(xiàn)。
今天這篇博客就要實現(xiàn)使用兩張ImageView, 交替的區(qū)展示Image, Image是在將要顯示的時候才貼到ImageView上,好廢話少說,進入今天博客的主題。
一、運行效果及原理分析
1.Demo的運行效果
下圖的Gif是本片博客Demo的運行效果,但從效果上來看,和上一篇博客的運行效果是一樣的,但本質(zhì)和實現(xiàn)原理是不同的。在本篇博客的結(jié)尾會給出Demo在Github上的分享地址,首先大家可以看一下效果,是可以無限輪播的,而且可以支持手動滑動。點擊每張圖片也是會通過Block回調(diào)的方式給出每張圖片的索引的。
2. 原理實現(xiàn)分析
下圖呢是簡單畫的原理圖,以3張圖片為例,當(dāng)然使用的是兩個ImageView,并給出了三張圖片在兩張ImageView以及在可視區(qū)的展示順序。把原理搞明白了敲代碼也就輕松了,在寫代碼時不要在思路不清晰的情況下就開始動鍵盤。原理的核心就是當(dāng)是新的圖片永遠(yuǎn)是加在第二張ImageView上的,下一輪的第一張圖片,是上一輪的第二張圖片,這樣就可以形成一個無縫滾動了。還是看下面這張原理圖吧,自己畫的,應(yīng)該是可以看的。
二、demo分享
關(guān)于本篇博客的代碼呢,就不一行一行的往博客上粘貼了,原理明白了,實現(xiàn)應(yīng)該不成問題的,本篇的博客代碼會分享到github上,下方是github的分享地址,有興趣的小伙伴可以Clone一下。
gitHub分享地址:https://github.com/lizelu/ZLImageScrollView
接下來的幾篇博客會給大家分享SQLite的一些東西,更深一層的窺探一下SQLite數(shù)據(jù)庫~
新聞熱點
疑難解答