近幾日有網(wǎng)友在群里提問(wèn):有沒(méi)有大神做過(guò)ViewPager實(shí)現(xiàn)垂直滑動(dòng)效果。其實(shí)這個(gè)問(wèn)題實(shí)現(xiàn)很簡(jiǎn)單,下面就簡(jiǎn)單的講一下實(shí)現(xiàn)步驟:
先來(lái)看一張效果圖:(你會(huì)發(fā)現(xiàn),切換ViewPager慢一些,會(huì)看到顏色過(guò)渡效果,so beautiful)

本文示例代碼請(qǐng)查看:https://github.com/AweiLoveAndroid/AwesomeViewPager
一、首先寫(xiě)一個(gè)類(lèi)繼承ViewPager,在構(gòu)造方法里面設(shè)置viewpage的切換動(dòng)畫(huà),然后重寫(xiě)onInterceptTouchEvent,對(duì)事件是否處理進(jìn)行判斷。
寫(xiě)一個(gè)類(lèi)繼承ViewPager,具體代碼如下:

下面看看核心類(lèi)PageTransformer,它是處理動(dòng)畫(huà)切換之類(lèi)的。下面我自定義一個(gè)PageTransformer,重寫(xiě)transformPage方法,處理動(dòng)畫(huà)切換方向。

完整的代碼如下圖所示:

二、使用方法也很簡(jiǎn)單。
以下是MainActivity的代碼:

以下是PagerAdapter的代碼:

完整的MainActivity請(qǐng)看下圖:

三、布局文件如下:
下面是view_one.xml,view_two,view_three也是一樣的,只是text內(nèi)容不一樣。為了演示簡(jiǎn)單,這里只是用了TextView做演示。

activity_main.xml代碼如下:

相關(guān)文章:
【原創(chuàng)】自定義ViewPager實(shí)現(xiàn)3D畫(huà)廊效果
【原創(chuàng)】Android Studio使用Vector創(chuàng)建矢量圖并加載
??萬(wàn)能的dialog庫(kù)(包括類(lèi)似popwindow效果)
【原創(chuàng)】教你如何最快寫(xiě)出酷炫的dialog對(duì)話(huà)框
【原創(chuàng)】封裝工廠(chǎng)類(lèi)創(chuàng)建BottomNavigationBar的addItem