Android使用TabLayou+fragment+viewpager實(shí)現(xiàn)滑動(dòng)切換頁面效果
TabLayou 主要實(shí)現(xiàn)的是標(biāo)題頭的 滑動(dòng) 這個(gè) 控件 類似于 ScrollView
XML中的布局
<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <android.support.design.widget.TabLayout android:id="@+id/homefragment_tablelayouts" android:layout_width="0dp" android:layout_height="30dp" app:tabIndicatorHeight="2dp" android:layout_weight="1" app:tabIndicatorColor="@color/colorred" app:tabSelectedTextColor="#000000" app:tabMode="scrollable" > </android.support.design.widget.TabLayout> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/add_channel_titlbar_new" /> </LinearLayout> <android.support.v4.view.ViewPager android:layout_weight="1" android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/homefragment_vp" ></android.support.v4.view.ViewPager>
以下是代碼的實(shí)現(xiàn)
//定義一個(gè)方法
public void getVpTitleData() {
// 找到 TabLayou 控件
TabLayout mTabLayout= (TabLayout) getView().findViewById(R.id.homefragment_tablelayouts);
// 找到 ViewPager 控件
ViewPager mViewPager= (ViewPager) getView().findViewById(R.id.homefragment_vp);
//定義 title 集合 來存儲(chǔ) 解析的data數(shù)據(jù)
listtitle = new ArrayList<>();
listtitle .add("頭條");
listtitle .add("社會(huì)");
listtitle .add("國內(nèi)");
listtitle .add("國際");
listtitle .add("明星");
listtitle .add("娛樂");
listtitle .add("軍事");
listtitle .add("財(cái)經(jīng)");
listtitle .add("時(shí)尚");
listtitle .add("八卦");
//遍歷 listtitle 集合 將title 添加經(jīng) TabLayou z中
for (int i = 0; i <listtitle.size() ; i++) {
mTabLayout.addTab(mTabLayout.newTab().setText(listtitle.get(i)));
}
//創(chuàng)建集合 循環(huán)添加創(chuàng)建的Fragment
listfragment = new ArrayList<>();
for (int i = 0; i <date.size() ; i++) {
BeiJingFragment mjingFragment = new BeiJingFragment();
listfragment.add(mjingFragment);
}
HomeFragmentVPFragmentAdapter mAdapter = new HomeFragmentVPFragmentAdapter(getFragmentManager(),listfragment,listtitle);
//給ViewPager設(shè)置適配器
mViewPager.setAdapter(mAdapter);
//將TabLayout和ViewPager關(guān)聯(lián)起來。
mTabLayout.setupWithViewPager(mViewPager);
//給TabLayout設(shè)置適配器
mTabLayout.setTabsFromPagerAdapter(mAdapter);
}
ViewPafer與Fragment的適配器
public class HomeFragmentVPFragmentAdapter extends FragmentStatePagerAdapter {
List<Fragment> listfragment;
List<String> listtitle;
public HomeFragmentVPFragmentAdapter(FragmentManager fm, List<Fragment> listfragment, List<String> listtitle) {
super(fm);
this.listfragment = listfragment;
this.listtitle = listtitle;
}
@Override
public CharSequence getPageTitle(int position) {
return listtitle.get(position);
}
@Override
public Fragment getItem(int position) {
return listfragment.get(position);
}
@Override
public int getCount() {
return listfragment.size();
}
}

以上所述是小編給大家介紹的Android使用TabLayou+fragment+viewpager實(shí)現(xiàn)滑動(dòng)切換頁面效果,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- Android如何使用ViewPager2實(shí)現(xiàn)頁面滑動(dòng)切換效果
- Android HorizontalScrollView滑動(dòng)與ViewPager切換案例詳解
- Android ViewPager撤消左右滑動(dòng)切換功能實(shí)現(xiàn)代碼
- Android開發(fā)之使用ViewPager實(shí)現(xiàn)圖片左右滑動(dòng)切換效果
- Android中的ViewPager視圖滑動(dòng)切換類的入門實(shí)例教程
- Android App中使用ViewPager+Fragment實(shí)現(xiàn)滑動(dòng)切換效果
- Android應(yīng)用中利用ViewPager實(shí)現(xiàn)多頁面滑動(dòng)切換效果示例
- Android編程實(shí)現(xiàn)ViewPager多頁面滑動(dòng)切換及動(dòng)畫效果的方法
- Android實(shí)現(xiàn)界面左右滑動(dòng)切換功能
- Android開發(fā)之ViewPager實(shí)現(xiàn)滑動(dòng)切換頁面
相關(guān)文章
Android編程之計(jì)時(shí)器Chronometer簡(jiǎn)單示例
這篇文章主要介紹了Android計(jì)時(shí)器Chronometer簡(jiǎn)單用法,結(jié)合實(shí)例形式分析了Android計(jì)時(shí)器Chronometer的定義、事件響應(yīng)及界面布局相關(guān)操作技巧,需要的朋友可以參考下2017-08-08
Android應(yīng)用的Material設(shè)計(jì)中圖片的相關(guān)處理指南
這篇文章主要介紹了Android應(yīng)用的Material設(shè)計(jì)中圖片的相關(guān)處理指南,除了介紹新的方法外文中還給出了一些設(shè)計(jì)標(biāo)準(zhǔn)樣例僅供參考,需要的朋友可以參考下2016-04-04
android自動(dòng)工具類TextUtils使用詳解
這篇文章主要介紹了android自動(dòng)工具類TextUtils的使用方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-10-10
Android實(shí)現(xiàn)粒子中心擴(kuò)散動(dòng)畫效果
粒子動(dòng)畫效果相比其他動(dòng)畫來說是非常復(fù)雜了的,主要涉及三個(gè)方面,粒子初始化、粒子位移、粒子回收等問題,本篇將實(shí)現(xiàn)兩種動(dòng)畫效果,代碼基本相同,只是旋轉(zhuǎn)速度不一樣,需要的朋友可以參考下2024-02-02
recycleview實(shí)現(xiàn)拼多多首頁水平滑動(dòng)效果
這篇文章主要為大家詳細(xì)介紹了recycleview實(shí)現(xiàn)拼多多首頁水平滑動(dòng)效,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-05-05
Android Messenger實(shí)現(xiàn)進(jìn)程間雙向通信
這篇文章主要為大家詳細(xì)介紹了Messenger實(shí)現(xiàn)進(jìn)程間雙向通信,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-05-05
詳解Android?Flutter如何使用相機(jī)實(shí)現(xiàn)拍攝照片
在app中使用相機(jī)肯定是再平常不過的一項(xiàng)事情了,相機(jī)肯定涉及到了底層原生代碼的調(diào)用,那么在flutter中如何快速簡(jiǎn)單的使用上相機(jī)的功能呢?一起來看看吧2023-04-04

