TabLayout结合ViewPager的使用
来源:互联网 发布:2015杭州旅游数据统计 编辑:程序博客网 时间:2024/05/17 08:05
点击title 和滑动viewpager 都可实现滑动
布局文件如下
<?xml version="1.0" encoding="utf-8"?><android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.design.widget.AppBarLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> <android.support.design.widget.TabLayout android:id="@+id/tab_layout" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" app:tabIndicatorColor="@color/icons"/> </android.support.design.widget.AppBarLayout> <android.support.v4.view.ViewPager android:id="@+id/viewpager" android:layout_width="match_parent" android:layout_height="wrap_content" app:layout_behavior="@string/appbar_scrolling_view_behavior"/></android.support.design.widget.CoordinatorLayout>
package com.lauren.simplenews.news.widget;import android.os.Bundle;import android.support.annotation.Nullable;import android.support.design.widget.TabLayout;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentManager;import android.support.v4.app.FragmentPagerAdapter;import android.support.v4.view.ViewPager;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import com.lauren.simplenews.R;import java.util.ArrayList;import java.util.List;/** * Author : lauren * Email : lauren.liuling@gmail.com * Blog : http://www.liuling123.com * Date : 15/12/13 */public class NewsFragment extends Fragment { public static final int NEWS_TYPE_TOP = 0; public static final int NEWS_TYPE_NBA = 1; public static final int NEWS_TYPE_CARS = 2; public static final int NEWS_TYPE_JOKES = 3; private TabLayout mTablayout; private ViewPager mViewPager; @Nullable @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_news, null); mTablayout = (TabLayout) view.findViewById(R.id.tab_layout); mViewPager = (ViewPager) view.findViewById(R.id.viewpager); mViewPager.setOffscreenPageLimit(3); setupViewPager(mViewPager); mTablayout.addTab(mTablayout.newTab().setText(R.string.top)); mTablayout.addTab(mTablayout.newTab().setText(R.string.nba)); mTablayout.addTab(mTablayout.newTab().setText(R.string.cars)); mTablayout.addTab(mTablayout.newTab().setText(R.string.jokes)); mTablayout.setupWithViewPager(mViewPager); return view; } private void setupViewPager(ViewPager mViewPager) { //Fragment中嵌套使用Fragment一定要使用getChildFragmentManager(),否则会有问题 MyPagerAdapter adapter = new MyPagerAdapter(getChildFragmentManager()); adapter.addFragment(NewsListFragment.newInstance(NEWS_TYPE_TOP), getString(R.string.top)); adapter.addFragment(NewsListFragment.newInstance(NEWS_TYPE_NBA), getString(R.string.nba)); adapter.addFragment(NewsListFragment.newInstance(NEWS_TYPE_CARS), getString(R.string.cars)); adapter.addFragment(NewsListFragment.newInstance(NEWS_TYPE_JOKES), getString(R.string.jokes)); mViewPager.setAdapter(adapter); } public static class MyPagerAdapter extends FragmentPagerAdapter { private final List<Fragment> mFragments = new ArrayList<>(); private final List<String> mFragmentTitles = new ArrayList<>(); public MyPagerAdapter(FragmentManager fm) { super(fm); } public void addFragment(Fragment fragment, String title) { mFragments.add(fragment); mFragmentTitles.add(title); } @Override public Fragment getItem(int position) { return mFragments.get(position); } @Override public int getCount() { return mFragments.size(); } @Override public CharSequence getPageTitle(int position) { return mFragmentTitles.get(position); } }}
简单实用 不解释
0 0
- TabLayout结合ViewPager的使用
- TabLayout结合ViewPager使用
- tablayout结合viewPager使用
- Tablayout与ViewPager的结合使用
- TabLayout和viewpager的结合使用
- TabLayout,ViewPager,Fragment结合使用
- TabLayout和ViewPager结合使用
- 二.tablayout结合viewPager使用
- TabLayout/ViewPager/Fragment结合使用
- tablayout与viewpager的结合
- Tablayout和Viewpager的结合使用,实现导航的效果
- Android中TabLayout和ViewPager的结合使用
- android关于TabLayout+ViewPager结合使用的小Demo
- Android中TabLayout和ViewPager的结合使用
- TabLayout(结合viewpager进行联动,平移)的使用
- TabLayout的基本使用结合Viewpager(Android开发)
- Tablayout+Viewpager的使用
- TabLayout+ViewPager的使用
- 有点难度的搜索
- cocos creator的自定义事件
- android 开发中不可不知的技巧
- codeforces#290 B&&510 B Fox And Two Dots(简单dfs)
- UOJ#228 基础数据结构练习题
- TabLayout结合ViewPager的使用
- Python: 渐进猜数字游戏 <8> 代码优化 与 结项
- nth-child vs nth-of-type
- jQuery+json,分页显示数据列表,HTML+CSS,固定表头
- V6+2C6678 所有上电 时钟 JTAG调试都已调好
- 经济学?不明觉厉:看完这18则段子,醍醐灌顶!
- cocos creator的自定义事件移除
- 最常用标准库函数
- upload.php