精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Android底部導(dǎo)航欄實(shí)現(xiàn)(四)之TabLayout+ViewPager

移動(dòng)開發(fā) Android
這里簡單記錄一下通過TabLayout+ViewPager來實(shí)現(xiàn)Android底部導(dǎo)航欄。

 這里簡單記錄一下通過TabLayout+ViewPager來實(shí)現(xiàn)Android底部導(dǎo)航欄。 

 

 

  

 

 

 

布局 

  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
  3.                 xmlns:app="http://schemas.android.com/apk/res-auto" 
  4.                 android:layout_width="match_parent" 
  5.                 android:layout_height="match_parent" 
  6.                 android:orientation="vertical"
  7.  
  8.     <include layout="@layout/fragment_content"/> 
  9.  
  10.     <LinearLayout 
  11.         android:layout_width="match_parent" 
  12.         android:layout_height="match_parent" 
  13.         android:orientation="vertical"
  14.  
  15.  
  16.         <android.support.v4.view.ViewPager 
  17.             android:id="@+id/view_pager" 
  18.             android:layout_width="match_parent" 
  19.             android:layout_height="0dp" 
  20.             android:layout_weight="1"></android.support.v4.view.ViewPager> 
  21.  
  22.         <android.support.design.widget.TabLayout 
  23.             android:id="@+id/tab_layout" 
  24.             android:layout_width="match_parent" 
  25.             android:layout_height="56dp" 
  26.             app:tabBackground="@color/white" 
  27.             app:tabIndicatorHeight="0dp" 
  28.             app:tabSelectedTextColor="@color/colorPrimary" 
  29.             app:tabTextAppearance="@style/tabTextSizeStyle" 
  30.             app:tabTextColor="@color/black_1"></android.support.design.widget.TabLayout> 
  31.     </LinearLayout> 
  32. </RelativeLayout>  

代碼 

  1. mViewPager = (ViewPager) view.findViewById(R.id.view_pager); 
  2.         mTabLayout = (TabLayout) view.findViewById(R.id.tab_layout); 
  3.         initTabList(); 
  4.         mAdapter = new TabLayoutFragmentAdapter(getChildFragmentManager(), mTabList, getActivity(), mFragments, mTabImgs); 
  5.         mViewPager.setAdapter(mAdapter); 
  6.         mViewPager.setCurrentItem(0); 
  7.         mTabLayout.setupWithViewPager(mViewPager); 
  8.         mTabLayout.setTabMode(TabLayout.MODE_FIXED);//設(shè)置TabLayout的模式 
  9.         for (int i = 0; i < mTabLayout.getTabCount(); i++) { 
  10.             mTabLayout.getTabAt(i).setCustomView(mAdapter.getTabView(i)); 
  11.         } 
  12.         mTabLayout.addOnTabSelectedListener(this);//設(shè)置TabLayout的選中監(jiān)聽  

這里需要注意的就是TabLayout的使用。TabLayou配合ViewPager使用。要用 mTabLayout.setupWithViewPager(mViewPager);使二者聯(lián)系起來。另外這里面使用的是customView,當(dāng)然TabLayout自帶方法也可實(shí)現(xiàn)icon+text的效果。也就是效果:TabLayout + ViewPager 2

根據(jù)Tab選中狀態(tài)顯示Tab鍵效果 

  1. @Override 
  2.    public void onTabSelected(TabLayout.Tab tab) { 
  3.        setTabSelectedState(tab); 
  4.    } 
  5.  
  6.    @Override 
  7.    public void onTabUnselected(TabLayout.Tab tab) { 
  8.        setTabUnSelectedState(tab); 
  9.    } 
  10.  
  11.  
  12.    @Override 
  13.    public void onTabReselected(TabLayout.Tab tab) { 
  14.  
  15.    } 
  16.  
  17.  
  18.  
  19.  
  20. private void setTabSelectedState(TabLayout.Tab tab) { 
  21.        View customView = tab.getCustomView(); 
  22.        TextView tabText = (TextView) customView.findViewById(R.id.tv_tab_text); 
  23.        ImageView tabIcon = (ImageView) customView.findViewById(R.id.iv_tab_icon); 
  24.        tabText.setTextColor(ContextCompat.getColor(getActivity(), R.color.colorPrimary)); 
  25.        String s = tabText.getText().toString(); 
  26.        if (getString(R.string.item_home).equals(s)) { 
  27.            tabIcon.setImageResource(R.drawable.home_fill); 
  28.        } else if (getString(R.string.item_location).equals(s)) { 
  29.            tabIcon.setImageResource(R.drawable.location_fill); 
  30.        } else if (getString(R.string.item_like).equals(s)) { 
  31.            tabIcon.setImageResource(R.drawable.like_fill); 
  32.        } else if (getString(R.string.item_person).equals(s)) { 
  33.            tabIcon.setImageResource(R.drawable.person_fill); 
  34.        } 
  35.    } 
  36.  
  37.    private void setTabUnSelectedState(TabLayout.Tab tab) { 
  38.        View customView = tab.getCustomView(); 
  39.        TextView tabText = (TextView) customView.findViewById(R.id.tv_tab_text); 
  40.        ImageView tabIcon = (ImageView) customView.findViewById(R.id.iv_tab_icon); 
  41.        tabText.setTextColor(ContextCompat.getColor(getActivity(), R.color.black_1)); 
  42.        String s = tabText.getText().toString(); 
  43.        if (getString(R.string.item_home).equals(s)) { 
  44.            tabIcon.setImageResource(R.drawable.home); 
  45.        } else if (getString(R.string.item_location).equals(s)) { 
  46.            tabIcon.setImageResource(R.drawable.location); 
  47.        } else if (getString(R.string.item_like).equals(s)) { 
  48.            tabIcon.setImageResource(R.drawable.like); 
  49.        } else if (getString(R.string.item_person).equals(s)) { 
  50.            tabIcon.setImageResource(R.drawable.person); 
  51.        } 
  52.    }  

這里面不用設(shè)置defaultFragment,TabLayout會(huì)默認(rèn)顯示***個(gè);

另外,這里也貼出使用TabLayout自帶方法來實(shí)現(xiàn)效果代碼

值得說的是,自帶方法不能自定義icon和text的間距。用起來很方便,但是可能不是你要求的那個(gè)尺寸大小。我沒有去深究這里面的源碼。如果有人知道這個(gè)自帶方法怎么改變的,也請(qǐng)告知一下。 

  1.  mViewPager = (ViewPager) view.findViewById(R.id.view_pager); 
  2.         mTabLayout = (TabLayout) view.findViewById(R.id.tab_layout); 
  3.         initTabList(); 
  4.         mAdapter = new TabLayoutFragment2Adapter(getChildFragmentManager(), mTabList, getActivity(), mFragments, mTabImgs); 
  5.         mViewPager.setAdapter(mAdapter); 
  6.         mViewPager.setCurrentItem(0); 
  7.         mTabLayout.setupWithViewPager(mViewPager); 
  8.         mTabLayout.setTabMode(TabLayout.MODE_FIXED); 
  9. //        for (int i = 0; i < mTabLayout.getTabCount(); i++) { 
  10. //            mTabLayout.getTabAt(i).setCustomView(mAdapter.getTabView(i)); 
  11. //        } 
  12.         mTabLayout.addOnTabSelectedListener(this); 
  13. //        mViewPager.setCurrentItem(0); 
  14.         mTabLayout.getTabAt(0).setIcon(R.drawable.home_fill);//自有方法添加icon 
  15.         mTabLayout.getTabAt(1).setIcon(R.drawable.location); 
  16.         mTabLayout.getTabAt(2).setIcon(R.drawable.like); 
  17.         mTabLayout.getTabAt(3).setIcon(R.drawable.person);  

Tab切換 

  1. @Override 
  2.     public void onTabSelected(TabLayout.Tab tab) { 
  3. //        setTabSelectedState(tab);//這個(gè)也無需使用 
  4.         resetTabIcon(); 
  5.         int position = tab.getPosition(); 
  6.         Log.e("Kevin""position--->" + position); 
  7.         switch (position) { 
  8.             case 0: 
  9.                 tab.setIcon(R.drawable.home_fill); 
  10.                 break; 
  11.             case 1: 
  12.                 tab.setIcon(R.drawable.location_fill); 
  13.                 break; 
  14.             case 2: 
  15.                 tab.setIcon(R.drawable.like_fill); 
  16.                 break; 
  17.             case 3: 
  18.                 tab.setIcon(R.drawable.person_fill); 
  19.                 break; 
  20.  
  21.         } 
  22.     } 
  23.  
  24.  
  25. private void resetTabIcon() { 
  26.         mTabLayout.getTabAt(0).setIcon(R.drawable.home); 
  27.         mTabLayout.getTabAt(1).setIcon(R.drawable.location); 
  28.         mTabLayout.getTabAt(2).setIcon(R.drawable.like); 
  29.         mTabLayout.getTabAt(3).setIcon(R.drawable.person); 
  30.     }  

說明:這幾篇文章沒有過多的文字?jǐn)⑹觯驗(yàn)檫@些東西也不是很難,而且都是常用的,相信很多人都了如指掌了,多說亦是廢話,直接上代碼看的反而更清楚。

責(zé)任編輯:龐桂玉 來源: segmentfault
相關(guān)推薦

2016-12-07 10:18:44

移動(dòng)應(yīng)用開發(fā)底部導(dǎo)航android

2016-12-07 10:27:16

移動(dòng)應(yīng)用開發(fā)底部導(dǎo)航android

2016-12-07 10:32:14

移動(dòng)應(yīng)用開發(fā)底部導(dǎo)航android

2016-12-07 10:02:54

移動(dòng)應(yīng)用開發(fā)底部導(dǎo)航android

2022-08-08 19:46:26

ArkUI鴻蒙

2023-10-23 08:48:04

CSS寬度標(biāo)題

2022-11-15 18:31:37

React

2021-08-02 09:11:39

底部導(dǎo)航產(chǎn)品Tab Bar

2009-06-24 09:36:52

XML實(shí)現(xiàn)breadcMVC

2021-01-28 06:11:40

導(dǎo)航組件Sidenav Javascript

2020-11-23 14:29:22

Android 10窗口代碼

2016-12-01 09:24:56

Android

2017-02-17 11:00:57

狀態(tài)欄Android

2013-01-14 17:05:55

UCUI設(shè)計(jì)菜單欄

2023-06-06 15:38:28

HTMLCSS開發(fā)

2016-12-09 09:23:50

android組件Service

2015-07-30 14:43:04

導(dǎo)航欄iOS開發(fā)

2022-02-11 14:48:57

Chrome谷歌下載欄

2012-04-28 11:07:15

2024-08-29 08:13:58

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

一区在线观看视频| 久久精品五月| 亚洲国产精品美女| 中文字幕欧美人妻精品一区| www 日韩| 盗摄精品av一区二区三区| 91豆花精品一区| 青青青视频在线免费观看| 亚洲精品不卡在线观看| 色婷婷综合久色| 91成人在线视频观看| 手机av在线免费观看| 老色鬼精品视频在线观看播放| 欧美激情精品久久久久久蜜臀 | 大胆人体一区二区| 亚洲欧美另类图片小说| 欧美二级三级| 成人高潮片免费视频| 日韩有码一区二区三区| 色综合色综合网色综合| 亚洲综合第一区| 日韩成人午夜| 欧美一级二级在线观看| 亚洲少妇第一页| 黄色激情在线播放| 一区二区三区在线观看网站| 午夜精品视频在线观看一区二区| 熟妇人妻av无码一区二区三区| 久久国产婷婷国产香蕉| 国产精品777| 日产精品久久久| 国内久久精品| 免费成人高清视频| 小早川怜子一区二区的演员表| 亚洲三级网页| 日韩av一区二区在线| 超碰91在线播放| 五月天色综合| 欧美日韩一区二区电影| 狠狠躁狠狠躁视频专区| 欧美va在线观看| 日韩欧美高清在线视频| 99热在线这里只有精品| 爱看av在线入口| 夜夜精品浪潮av一区二区三区| 一区二区三区精品国产| а√天堂中文在线资源bt在线 | 亚洲精品国产精品乱码在线观看| 伊人久久大香线蕉综合网蜜芽| 亚洲大胆人体视频| 永久免费未满蜜桃| xvideos.蜜桃一区二区| 精品日本一线二线三线不卡| 日本黄色一级网站| 香蕉大人久久国产成人av| 91精品国产综合久久婷婷香蕉| 777一区二区| 99精品美女视频在线观看热舞| 欧美欧美午夜aⅴ在线观看| 欧美三级午夜理伦三级富婆| 高清欧美日韩| 91精品国产91久久久久久一区二区| 精品综合久久久久| 精品视频在线播放一区二区三区| 欧美一级日韩不卡播放免费| 色哟哟在线观看视频| 99re8这里有精品热视频8在线| 精品欧美久久久| 日韩aaaaa| 欧美激情在线精品一区二区三区| 亚洲图片在区色| 久草福利资源在线| 欧美三级在线| 性欧美激情精品| 中文字幕免费观看| 精品一区二区三区蜜桃| 成人自拍偷拍| 国产小视频在线播放| 国产精品久久夜| 男女啪啪免费观看| 国产美女高潮在线观看| 色94色欧美sute亚洲13| www.51色.com| 同性恋视频一区| 色妞一区二区三区| 久久高清无码视频| 免费精品视频| 91香蕉嫩草影院入口| 色屁屁草草影院ccyycom| 国产日韩av一区| 国产日产欧美一区二区| 性欧美freesex顶级少妇| 欧美日韩视频不卡| 稀缺呦国内精品呦| 成人免费电影网址| 久久噜噜噜精品国产亚洲综合 | 久久久久久九九| 嫩草在线视频| 调教+趴+乳夹+国产+精品| 一路向西2在线观看| 不卡一区视频| 成人动漫一区二区在线| 日韩欧美一区二区三区四区五区 | 国产第一页在线观看| 国产最新精品精品你懂的| 激情视频一区二区| 九义人在线观看完整免费版电视剧| 亚洲国产另类av| 免费看涩涩视频| 日韩伦理一区二区三区| 两个人的视频www国产精品| 亚洲GV成人无码久久精品| 国产一区二区伦理| 日本精品国语自产拍在线观看| 欧洲精品二区| 3d动漫精品啪啪一区二区竹菊| 中文人妻一区二区三区| 激情91久久| 成人国产精品日本在线| 国产高清一区在线观看| 午夜电影网一区| 午夜性福利视频| 色婷婷色综合| 国产精品福利久久久| 日韩一区二区三区不卡| 亚洲男人的天堂在线aⅴ视频| 日本www高清视频| 天天躁日日躁狠狠躁欧美| 欧美精品电影免费在线观看| 99热这里只有精品5| 中文字幕成人在线观看| 老司机午夜av| 九九久久电影| 国产91对白在线播放| 国产自产一区二区| 亚洲日本在线看| 日韩一区二区三区久久| 欧美日韩亚洲在线观看| 国产国语videosex另类| 欧美另类自拍| 色综合久久中文字幕| 蜜桃精品成人影片| 国产精品亚洲综合久久| 精品视频在线观看| 婷婷电影在线观看| 精品视频久久久久久久| 成人在线免费看视频| av在线播放不卡| 少妇av一区二区三区无码| 欧美电影在线观看免费| 午夜精品久久17c| 亚洲 精品 综合 精品 自拍| 精品国产乱码久久久久久天美| 亚洲911精品成人18网站| 欧美午夜在线视频| 国产伦精品一区二区三区高清版| 黄色污污视频在线观看| 亚洲成人av在线播放| 国产欧美日韩另类| 99久久久久免费精品国产 | 免费高清成人在线| 中国成人亚色综合网站| 欧美视频三区| 久久久亚洲成人| 色视频在线观看免费| 色88888久久久久久影院按摩| 99久久久无码国产精品衣服| 麻豆国产精品一区二区三区| 日韩视频在线观看视频| 99re8这里有精品热视频免费| 久久男人av资源网站| 五月婷婷久久久| 日韩人体视频一二区| 亚洲av成人无码久久精品| 日韩av在线免费观看不卡| 亚洲视频导航| 亚洲日本va| 日本欧美一二三区| 理论片午午伦夜理片在线播放| 91精品欧美久久久久久动漫| 日韩av一二三区| 中文在线一区二区| 国产精品国产一区二区| wwww亚洲| 在线日韩av观看| 99国产精品一区二区三区 | 最新国产精品亚洲| av网站免费播放| 欧美性黄网官网| 一起操在线播放| 91色九色蝌蚪| 国产成人美女视频| 99pao成人国产永久免费视频| 五月天亚洲综合情| 激情av综合| 91精品久久久久久综合乱菊| 成年人黄色大片在线| 中文字幕在线国产精品| 免费成人在线看| 欧美午夜电影一区| 日韩精品视频免费看| 国产精品久久久久三级| 第四色在线视频| 国内精品久久久久影院薰衣草| 欧美视频在线播放一区| 欧美激情aⅴ一区二区三区| 欧洲亚洲一区二区三区四区五区| 日韩免费高清视频网站| 国产精品嫩草影院一区二区| www在线观看黄色| 久久久91精品| 国产高清在线| 日韩毛片在线观看| 亚洲精品久久久久久无码色欲四季| 91福利在线免费观看| 国产精品999久久久| 亚洲日本在线a| 国产成人精品视频免费| 久久久久久久久久久电影| av天堂一区二区| 国产麻豆视频精品| 特级丰满少妇一级| 视频一区中文字幕国产| 5月婷婷6月丁香| 国产精品v一区二区三区| 国产精品99久久久久久大便| 精品日韩在线| 欧美专区一二三| 四虎影视精品| 精品久久久久久一区二区里番| julia中文字幕一区二区99在线| 亚洲xxxxx| 欧美经典影片视频网站| 成人网页在线免费观看| 色综合一区二区日本韩国亚洲 | 欧美激情一区二区三区在线| 最新在线黄色网址| www.成人在线| japanese在线观看| 不卡的av电影| 无码任你躁久久久久久老妇| 成人免费黄色大片| 一级黄色片毛片| av中文字幕一区| 中国av免费看| 久久久久久日产精品| 中文人妻一区二区三区| 337p粉嫩大胆噜噜噜噜噜91av| 日本少妇xxxx| av一区二区久久| 欧美xxxxx精品| 97精品久久久久中文字幕| 粉嫩av懂色av蜜臀av分享| 久久久久久久综合色一本| 亚洲码无人客一区二区三区| 国产精品网站在线观看| 国产黄色小视频网站| 一区二区激情小说| 免费在线不卡视频| 在线观看视频一区| 国产精品国产三级国产普通话对白| 欧美电影影音先锋| 性欧美8khd高清极品| 亚洲国语精品自产拍在线观看| 日本韩国免费观看| 亚洲视频一区二区三区| 91大神在线网站| 欧美老女人xx| 678在线观看视频| 日本一区二区三区在线播放| 成人福利片在线| 91pron在线| 亚州av一区| 一区二区在线不卡| 韩国av一区| 日本三区在线观看| 精品影视av免费| 97精品人妻一区二区三区蜜桃| 国产无遮挡一区二区三区毛片日本| 日本猛少妇色xxxxx免费网站| 亚洲欧美偷拍卡通变态| 全部毛片永久免费看| 欧美日韩一区二区三区高清| 高清国产mv在线观看| 亚洲欧美日韩精品久久奇米色影视| 日韩专区在线| 高清一区二区三区日本久| 欧美日韩国产网站| 99理论电影网| 不卡视频在线| 2018国产在线| 国产一区二区电影| 波多野结衣 在线| 一区二区三区在线视频观看58| www毛片com| 欧美岛国在线观看| 爱久久·www| 欧美一级大片在线观看| 成人永久在线| 日韩三级电影免费观看| 国产一区亚洲| 奇米影视四色在线| 97国产精品videossex| 欧美爱爱免费视频| 日本精品一级二级| 人妻一区二区三区免费| 久久精品中文字幕一区| 国产综合av| 精品高清视频| 欧美日韩一卡| 成人黄色一级大片| 亚洲国产岛国毛片在线| 999这里只有精品| 日韩三级精品电影久久久| 在线观看完整版免费| 日韩**中文字幕毛片| 久久99国产精品久久99大师| 91制片厂免费观看| 免费看日韩精品| 国产精品扒开腿做爽爽| 精品人伦一区二区三区蜜桃网站 | 国产丝袜一区二区三区| 欧美午夜大胆人体| 91高跟黑色丝袜呻吟在线观看| 成人三级视频| 99热手机在线| 久久精品视频在线看| av网站中文字幕| 亚洲韩国青草视频| 98色花堂精品视频在线观看| av成人午夜| 欧美色123| 香蕉在线观看视频| 亚洲成人在线网站| 可以免费观看的毛片| 欧美激情一级二级| 成人av激情人伦小说| 欧美日韩dvd| 福利电影一区二区三区| 久久久久久久久久久久国产| 日韩视频在线你懂得| 91在线中字| 成人精品一二区| 欧美午夜久久| 涩视频在线观看| 午夜电影网一区| 欧美女优在线观看| 国产精品极品尤物在线观看| 成人aaaa| 污污网站在线观看视频| 亚洲免费资源在线播放| 国产成人精品a视频| 欧美激情视频在线免费观看 欧美视频免费一 | 黄色影院在线播放| 国产成人一区二区三区电影| 精品国产乱码久久久久久蜜坠欲下 | 精品国产视频在线观看| 91精品国产欧美一区二区18| 羞羞的视频在线看| 国产一区二区三区奇米久涩 | 中文久久久久久| 亚洲欧洲av另类| 亚洲精品福利网站| 2018日韩中文字幕| 久久av网址| 拔插拔插华人永久免费| 洋洋av久久久久久久一区| 后进极品白嫩翘臀在线视频| 91高潮精品免费porn| 俺要去色综合狠狠| 绯色av蜜臀vs少妇| 一本高清dvd不卡在线观看| xxxxx日韩| 高清视频一区| 视频精品一区二区| 尤物在线免费视频| 亚洲国产一区自拍| 成人黄色免费观看| 欧美极品少妇无套实战| 久久综合99re88久久爱| 一级特黄aaa大片| 久久久久国产精品免费| 精品国产aⅴ| 潘金莲一级淫片aaaaa| 色综合久久88色综合天天| 高清全集视频免费在线| 麻豆成人小视频| 国产一区欧美一区| 亚洲天堂一区在线观看| 久久久精品久久久| 全国精品免费看| 欧美性受xxxxxx黑人xyx性爽| 亚洲18女电影在线观看| 日本免费视频在线观看| 精品国产一区二区三区四区vr| 久久精品免费观看| 国产www在线| 久久99国产精品自在自在app| 欧美猛男男男激情videos| 久久久久中文字幕亚洲精品|