日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ViewPager实现滑动翻页效果

發布時間:2025/6/15 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ViewPager实现滑动翻页效果 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

實現ViewPager的滑動翻頁效果可以使用ViewPager的setPageTransformer方法,如下:

import android.content.Context; import android.support.v4.view.ViewPager; import android.util.AttributeSet; import android.view.View; public class ReadViewPager extends ViewPager {public ReadViewPager(Context context){super(context);}public ReadViewPager(Context context, AttributeSet attrs){super(context, attrs);setAnima();}public void setAnima(){setPageTransformer(true, new PageTransformer(){private static final float MIN_SCALE = 0.75f;@Overridepublic void transformPage(View view, float position){int pageWidth = view.getWidth();int pageHeight =view.getHeight();if (position < -1){// [-Infinity,-1)// This page is way off-screen to the left.view.setAlpha(0);}else if (position <= 0){// [-1,0]// Use the default slide transition when moving to the left pageview.setAlpha(1);view.setTranslationX(0);view.setScaleX(1);view.setScaleY(1);}else if (position <= 1){// (0,1]// Fade the page out.view.setAlpha(1 - position); // // // Counteract the default slide transition // view.setAlpha(1);view.setTranslationX(pageWidth * -position); // // // Scale the page down (between MIN_SCALE and 1)float scaleFactor = MIN_SCALE+ (1 - MIN_SCALE) * (1 - Math.abs(position));view.setScaleX(scaleFactor);view.setScaleY(scaleFactor);}else{// (1,+Infinity]// This page is way off-screen to the right.view.setAlpha(0);}}});} }

核心代碼是android官方demo,以上實現的是翻頁效果是:上面一頁被滑出界面時,下面一頁慢慢顯現,透明度慢慢加大,并且大小由小慢慢變大。

不過有一個奇怪的現象,當我做一個答題界面時,剛剛開始我采用ViewPager與View結合實現無限循環切換,并且采用上面的動畫效果,可是每當我滑動到最后一張,也就是要開始新的一輪循環的時候,被滑出去的一頁也會出現慢慢變透明的情況,而我用ViewPager結合Fragment實現無限循環切換的是就不會出現這種效果

后來發現大概是因為我在適配器里面加上了下面這個方法才會造成上面的奇怪現象,所以下面的方法不能寫下

?

// PagerAdapter只緩存三張要顯示的圖片,如果滑動的圖片超出了緩存的范圍,就會調用這個方法,將圖片銷毀//在這里不能重寫 // @Override public void destroyItem(ViewGroup container, int position, Object object) { //// super.destroyItem(container, position, object); // }

?

?

如果想要實現仿造駕考寶典的翻頁效果,只要把核心方法改為以下代碼便可以了

setPageTransformer(true, new PageTransformer() {private static final float MIN_SCALE = 0.75f;@Overridepublic void transformPage(View view, float position) {int pageWidth = view.getWidth();int pageHeight =view.getHeight();if (position < -1) { // [-Infinity,-1)// This page is way off-screen to the left.view.setAlpha(0);} else if (position <= 0) { // [-1,0]// Use the default slide transition when moving to the left pageview.setAlpha(1);view.setTranslationX(0);view.setScaleX(1);view.setScaleY(1);} else if (position <= 1) { // (0,1]// Fade the page out. // view.setAlpha(1 - position); // // // Counteract the default slide transitionview.setAlpha(1);view.setTranslationX(pageWidth * -position); // // // Scale the page down (between MIN_SCALE and 1) // float scaleFactor = MIN_SCALE // + (1 - MIN_SCALE) * (1 - Math.abs(position)); // view.setScaleX(scaleFactor); // view.setScaleY(scaleFactor); } else { // (1,+Infinity]// This page is way off-screen to the right.view.setAlpha(0);}}});

下面我們來講講position參數:

position的可能性的值有:

[-Infinity,-1) ?已經看不到了

(1,+Infinity] 已經看不到了

?[-1,1]?

重點看[-1,1]這個區間 , 其他兩個的View都已經看不到了~~

?

假設現在ViewPager在A頁現在滑出B頁,則:

A頁的position變化就是( 0, -1]

B頁的position變化就是[ 1 , 0 ]

參考博客:http://blog.csdn.net/lmj623565791/article/details/40411921

??????????????? http://www.jianshu.com/p/251592d3ec62

轉載于:https://www.cnblogs.com/tangZH/p/6516690.html

總結

以上是生活随笔為你收集整理的ViewPager实现滑动翻页效果的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 最好看的电影2019中文字幕 | 久久一线 | 91麻豆国产视频 | 少妇黄色一级片 | 欧美1314| av丝袜天堂| 激情噜噜 | 福利社区一区二区 | 欧美精品一区二区三区久久久 | 免费欧美黄色 | xx在线视频 | 日本一区视频 | 欧美精品不卡 | 精品无码久久久久成人漫画 | 久久久久久久性 | 亚洲视频第一页 | 制服 丝袜 激情 欧洲 亚洲 | 影音先锋精品 | 亚洲最大网站 | 日韩视频在线观看二区 | 午夜亚洲福利在线老司机 | 韩国精品一区 | 激情福利在线 | 91传媒在线免费观看 | 国产操| 天天爽天天插 | 亚洲综合在线观看视频 | 91久久精品国产91性色69 | 一区二区三区免费视频观看 | 韩国黄色一级片 | 黄色大片在线免费观看 | 激情高潮呻吟抽搐喷水 | 美女在线不卡 | 91成人免费看片 | www.99精品 | 香蕉av一区二区 | 一级做a爰片毛片 | 亚洲国产成人一区二区精品区 | 久久成人免费网站 | 国产美女被草 | 成人av18 | 青青草久久久 | 日韩在线不卡一区 | 99精品视频免费版的特色功能 | 男女无遮挡xx00动态图120秒 | 日韩三级在线 | 久草黄色 | 亚洲av熟女一区 | 五月天伊人网 | 超碰福利在线观看 | 欧美黄色大片在线观看 | 激情久久免费视频 | 91视频直接看 | 天天曰| 日本特黄一级片 | 国产成人自拍视频在线 | 亚州国产精品视频 | 黄色网页观看 | 阿v视频免费在线观看 | 激情亚洲网| 久久久久国产视频 | 91国模 | 香蕉影院在线 | 日韩av区| 亚洲av鲁丝一区二区三区 | 中文在线一区二区三区 | 精品66| 中文字字幕在线中文乱码电影 | 对白刺激theporn | 天天综合一区 | 国产系列精品av | 经典一区二区 | 亚洲人丰满奶水 | 亚洲污片 | 极品美女av | 中文字幕丝袜 | 亚洲www色 | 永久免费毛片 | 黄色a级大片 | 欧美日韩精品一区二区三区四区 | 男人的天堂avav | 夜夜操网址 | 成人日批 | 一个色综合久久 | 全黄一级裸体 | 中文日韩欧美 | 337p粉嫩大胆色噜噜噜 | 久久av资源网 | 99精品视频在线 | 国产精品调教 | 成人在线观看av | 久草手机在线视频 | 91av视频免费观看 | 日本一区二区三区欧美 | 91亚洲精| 国产,日韩,欧美 | 干操网 | 在线成人免费电影 | 天天看av |