Viewpager默認(rèn)是支持水平滑動(dòng)的,但是可以通過(guò)自定義實(shí)現(xiàn)垂直滑動(dòng)??梢酝ㄟ^(guò)繼承ViewPager類,重寫其onInterceptTouchEvent()和onTouchEvent()方法,實(shí)現(xiàn)垂直滑動(dòng)效果。具體步驟如下:
創(chuàng)建一個(gè)自定義的VerticalViewPager類,繼承自ViewPager類。
在VerticalViewPager類中重寫onInterceptTouchEvent()方法,將事件的X和Y坐標(biāo)進(jìn)行交換,使得觸摸事件在Y軸上進(jìn)行滑動(dòng)。
在VerticalViewPager類中重寫onTouchEvent()方法,同樣需要對(duì)觸摸事件的X和Y坐標(biāo)進(jìn)行交換。
在布局文件中使用自定義的VerticalViewPager替換原生的ViewPager。
通過(guò)以上步驟,便可以實(shí)現(xiàn)垂直滑動(dòng)的ViewPager效果。