Viewpager圖片自動(dòng)輪播無限循環(huán)是Android開發(fā)中經(jīng)常用到的功能,功能實(shí)現(xiàn)起來也比較簡單。雖然如此,但是很多情況下做出來的效果并不太讓人滿意,甚至有些上線的項(xiàng)目自動(dòng)輪播上也會(huì)出現(xiàn)一些bug。比如切換過程中出現(xiàn)空白頁面,有些甚至在滑動(dòng)過程中造成程序崩潰。本篇文章將實(shí)現(xiàn)ViewPager圖片自動(dòng)輪播無限循環(huán),而且頁面切換效果非常流暢。
頁面循環(huán)切換最容易出現(xiàn)問題的地方就是在最后一頁向第一頁切換或者第一頁向最后一頁切換時(shí),在這個(gè)切換過程中很容易出現(xiàn)空白頁面。怎么解決這個(gè)問題?
下面說下本程序的實(shí)現(xiàn)的思路。在第一張圖片前和最后一張圖片后分別添加一個(gè)ImageView,最前邊的ImageView背景設(shè)置為最后一張圖片,最后一個(gè)ImageView背景設(shè)置第一張圖片。當(dāng)我們判斷滑動(dòng)到最后一個(gè)ImageView時(shí)則設(shè)置ViewPager.setCurrentItem(1),讓其自動(dòng)切換到第一張圖片,這樣在從最后一頁切換到第一頁時(shí)由于圖片是用的同一張圖片,所以就會(huì)使切換效果顯得很流暢自然。同理,當(dāng)滑動(dòng)到第0個(gè)ImageView時(shí)用ViewPager.setCurrentItem(length)自動(dòng)切換到倒數(shù)第二張圖片,第0個(gè)ImageView和倒數(shù)第二個(gè)ImageView圖片相同,這樣就使滑動(dòng)效果顯得很自然。
- PC官方版
- 安卓官方手機(jī)版
- IOS官方手機(jī)版