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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

viewpager+fragment学习笔记

發(fā)布時間:2024/4/17 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 viewpager+fragment学习笔记 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

有暇,總結(jié)一下viewpager+fragment的使用。
先來看看效果圖:

有三個標(biāo)題,三個fragment,滑動時標(biāo)題的顏色會隨著變化。

MainActivity.java

public class MainActivity extends FragmentActivity {private ViewPager vp;private Fragment f1, f2, f3;//把所有的Fragment裝到一個List中private List<Fragment> fs;private FragmentPagerAdapter fpa;private TextView tv1, tv2, tv3;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);vp = (ViewPager) this.findViewById(R.id.vp1);initView();//一個適配器,里邊存的都是Fragmentfpa = new FragmentPagerAdapter(getSupportFragmentManager()) {@Overridepublic int getCount() {return fs.size();}@Overridepublic Fragment getItem(int arg0) {return fs.get(arg0);}};vp.setAdapter(fpa);/*** 三個方法的執(zhí)行順序為:用手指拖動翻頁時,最先執(zhí)行一遍onPageScrollStateChanged(1),* 然后不斷執(zhí)行onPageScrolled,放手指的時候,直接立即執(zhí)行一次onPageScrollStateChanged(2),* 然后立即執(zhí)行一次onPageSelected,然后再不斷執(zhí)行onPageScrolled,* 最后執(zhí)行一次onPageScrollStateChanged(0)。*/vp.setOnPageChangeListener(new OnPageChangeListener() {/*** position代表哪個頁面被選中*/@Overridepublic void onPageSelected(int position) {switch (position) {case 0:changeTitleBackground(0);break;case 1:changeTitleBackground(1);break;case 2:changeTitleBackground(2);break;default:break;}Log.i("lenve", "onPageSelected"+position);}/*** 有三個參數(shù),第一個position,這個參數(shù)要特別注意一下。當(dāng)用手指滑動時,如果手指按在頁面上不動,* position和當(dāng)前頁面index是一致的* 如果手指向左拖動(相應(yīng)頁面向右翻動),這時候position大部分時間和當(dāng)前頁面是一致的,* 只有翻頁成功的情況下最后一次調(diào)用才會變?yōu)槟繕?biāo)頁面;如果手指向右拖動(相應(yīng)頁面向左翻動),* 這時候position大部分時間和目標(biāo)頁面是一致的,只有翻頁不成功的情況下最后一次調(diào)用才會變?yōu)樵撁妗? 當(dāng)直接設(shè)置setCurrentItem翻頁時,如果是相鄰的情況(比如現(xiàn)在是第二個頁面,跳到第一或者第三個頁面),* 如果頁面向右翻動,大部分時間是和當(dāng)前頁面是一致的,只有最后才變成目標(biāo)頁面;如果向左翻動,position和目標(biāo)頁面是一致的。* 這和用手指拖動頁面翻動是基本一致的。* 如果不是相鄰的情況,比如我從第一個頁面跳到第三個頁面,position先是0,然后逐步變成1,* 然后逐步變成2;我從第三個頁面跳到第一個頁面, position先是1,然后逐步變成0,并沒有出現(xiàn)為2的情況。* positionOffset是當(dāng)前頁面滑動比例,如果頁面向右翻動,這個值不斷變大,最后在趨近1的情況后突變?yōu)?。* 如果頁面向左翻動,這個值不斷變小,最后變?yōu)?。* positionOffsetPixels是當(dāng)前頁面滑動像素,變化情況和positionOffset一致。*/// 在屏幕滾動過程中不斷被調(diào)用@Overridepublic void onPageScrolled(int position,float positionOffset, int positionOffsetPixels) {Log.i("lenve", "onPageScrolled"+position);}/*** onPageScrollStateChanged(int state):這個方法在手指操作屏幕的時候發(fā)生變化。* 有三個值:0(END),1(PRESS) , 2(UP) 。 當(dāng)用手指滑動翻頁時,手指按下去的時候會觸發(fā)這個方法,state值為1* 手指抬起時,如果發(fā)生了滑動(即使很小),這個值會變?yōu)?,然后最后變?yōu)?* 總共執(zhí)行這個方法三次。一種特殊情況是手指按下去以后一點滑動也沒有發(fā)生,這個時候只會調(diào)用這個方法兩次,state值分別是1,0 。* 當(dāng)setCurrentItem翻頁時,會執(zhí)行這個方法兩次,state值分別為2 , 0 。*/@Overridepublic void onPageScrollStateChanged(int state) {Log.i("lenve", "onPageScrollStateChanged"+state);}});//設(shè)置默認(rèn)顯示頁vp.setCurrentItem(0);}private void initView() {tv1 = (TextView) this.findViewById(R.id.tv1);tv2 = (TextView) this.findViewById(R.id.tv2);tv3 = (TextView) this.findViewById(R.id.tv3);//設(shè)置tv1的默認(rèn)顏色tv1.setTextColor(Color.GREEN);fs = new ArrayList<Fragment>();f1 = new Fragment1();f2 = new Fragment2();f3 = new Fragment3();fs.add(f1);fs.add(f2);fs.add(f3);}//滑動時修改標(biāo)題顏色private void changeTitleBackground(int i) {switch (i) {case 0:tv1.setTextColor(Color.GREEN);tv2.setTextColor(Color.GRAY);tv3.setTextColor(Color.GRAY);break;case 1:tv1.setTextColor(Color.GRAY);tv2.setTextColor(Color.GREEN);tv3.setTextColor(Color.GRAY);break;case 2:tv1.setTextColor(Color.GRAY);tv2.setTextColor(Color.GRAY);tv3.setTextColor(Color.GREEN);break;default:break;}} }

注釋里邊說的比較清楚了,再看看布局文件:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"tools:context="com.example.viewpagertest.MainActivity" ><LinearLayout android:layout_width="match_parent"android:layout_height="wrap_content"android:orientation="horizontal" ><TextView android:id="@+id/tv1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:gravity="center_horizontal"android:text="f1" /><TextView android:id="@+id/tv2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:gravity="center_horizontal"android:text="f2" /><TextView android:id="@+id/tv3"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:gravity="center_horizontal"android:text="f3" /></LinearLayout><android.support.v4.view.ViewPager android:id="@+id/vp1"android:layout_width="match_parent"android:layout_height="match_parent" /></LinearLayout>

另外,三個fragment都是普通的fragment,這里就不貼代碼了。

本項目源碼下載

版權(quán)聲明:本文為博主原創(chuàng)文章,未經(jīng)博主允許不得轉(zhuǎn)載。若有錯誤地方,還望批評指正,不勝感激。

轉(zhuǎn)載于:https://www.cnblogs.com/lenve/p/4770542.html

總結(jié)

以上是生活随笔為你收集整理的viewpager+fragment学习笔记的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美激情在线一区 | 天天综合久久综合 | 91视频免费网站 | 亚洲av人无码激艳猛片服务器 | 在线视频午夜 | 国产亚洲欧美在线精品 | 亚洲最新中文字幕 | 亚洲精品成人无码熟妇在线 | 麻豆一二三区 | 亚洲国产不卡 | 亚洲精品一区二区三区影院忠贞 | 久久亚洲AV成人无码国产野外 | 精品欧美激情精品一区 | 精品欧美一区二区精品久久 | 中文字幕va | 无码国产伦一区二区三区视频 | 亚洲三级网 | 欧美丰满老妇熟乱xxxxyyy | 久久91亚洲精品中文字幕奶水 | 国内老熟妇对白hdxxxx | 婷婷色av| 97热视频| 亚洲国产免费 | 国产一级视频在线播放 | 97人人模人人爽人人少妇 | 亚洲国产传媒 | 日本高清不卡一区 | 国产精品欧美久久久久天天影视 | 九色91在线| 精品影视一区二区 | 男人天堂资源网 | 高潮在线视频 | 亚洲熟女一区 | 亚洲综合资源 | 日韩激情在线 | 青青伊人精品 | 修女也疯狂3免费观看完整版 | 七仙女欲春2一级裸体片 | 国产不卡精品 | 毛片大片| 国产毛片精品国产一区二区三区 | 国产黄色精品 | 色偷偷一区二区三区 | 国产精品视频专区 | 四虎永久免费在线观看 | 91精品国产高清一区二区三区蜜臀 | 侵犯女教师一区二区三区 | 亚洲熟女乱色综合亚洲av | 国产精品福利一区二区三区 | 国内毛片毛片毛片 | 亚洲区自拍偷拍 | 蜜臀99久久精品久久久久小说 | 日韩激情一区二区三区 | 精产国品一区二区三区 | 色视频一区二区 | 国产成人精品在线观看 | 成人av专区| 免费看美女隐私网站 | 国产网站免费观看 | 一级特黄aaa | 国产精品人八做人人女人a级刘 | 亚洲国产精品久久精品怡红院 | 日韩欧美一本 | 成人午夜精品 | 打美女屁股网站 | 国产午夜成人久久无码一区二区 | 色婷婷综合激情 | 毛片毛片毛片毛片毛片毛片毛片毛片毛片 | 国产国产乱老熟女视频网站97 | 激情综合网婷婷 | 91丝袜美女 | 色婷婷视频 | 国产成人在线视频观看 | 欧美专区 日韩专区 | 色午夜 | 成人免费看片又大又黄 | 午夜在线观看免费视频 | 亚洲高清视频网站 | 久久久久成人精品无码中文字幕 | 欧美日韩国产麻豆 | 精品一区二区三区在线观看 | 成人精品一区二区三区在线 | 尤物视频免费观看 | 狠狠操欧美 | 日本xxxxxwwwww| 精品人妻码一区二区三区红楼视频 | 亚洲乱熟女一区二区三区小说 | 日日夜夜爱爱 | 高潮一区二区 | 免费啪| 成人看片泡妞 | 今天最新中文字幕mv高清 | 小毛片在线观看 | 1000部拍拍拍18勿入免费视频 | 在线视频免费观看 | 亚洲激情国产 | 好吊色一区二区 | 日本不卡一区二区三区在线观看 | 欧美成在线观看 |