TabLayout+ViewPager使用
来源:互联网 发布:淘宝 武士刀 编辑:程序博客网 时间:2024/06/03 18:16
直接上效果图
首先看布局
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.design.widget.TabLayout android:id="@+id/tablayout" app:tabMode="scrollable"//这句话表示tab是可以滚动的 android:layout_width="match_parent" android:layout_height="43dp"> </android.support.design.widget.TabLayout> <android.support.v4.view.ViewPager android:id="@+id/vp" android:layout_width="match_parent" android:layout_height="0dp" android:background="#D1EEEE" android:layout_weight="1" /></LinearLayout>
MainActivity
package com.viewpager02;import android.os.Bundle;import android.support.design.widget.TabLayout;import android.support.v4.app.Fragment;import android.support.v4.view.ViewPager;import android.support.v7.app.AppCompatActivity;import android.widget.RadioButton;import android.widget.RadioGroup;import com.viewpager02.adapter.MyAdapter;import com.viewpager02.fragments.FourFragment;import com.viewpager02.fragments.OneFragment;import com.viewpager02.fragments.ThreeFragment;import com.viewpager02.fragments.TwoFragment;import java.util.ArrayList;import java.util.List;public class MainActivity extends AppCompatActivity { private int currentPosition; private ViewPager vp; private List<Fragment> list; private List<String> tab_list; private MyAdapter adapter; private TabLayout tabLayout; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); vp = (ViewPager) findViewById(R.id.vp); tabLayout = (TabLayout) findViewById(R.id.tablayout); initData(); initView(); } private void initView() { adapter = new MyAdapter(getSupportFragmentManager(),list,tab_list); vp.setAdapter(adapter); tabLayout.setupWithViewPager(vp); } private void initData() { list = new ArrayList<>(); list.add(new OneFragment()); list.add(new TwoFragment()); list.add(new ThreeFragment()); list.add(new ThreeFragment()); list.add(new ThreeFragment()); list.add(new ThreeFragment()); list.add(new ThreeFragment()); list.add(new FourFragment()); tab_list = new ArrayList<>(); tab_list.add("全部"); tab_list.add("创业"); tab_list.add("历史"); tab_list.add("家庭"); tab_list.add("伦理"); tab_list.add("佛学"); tab_list.add("道德"); tab_list.add("法律"); }}
MyAdapter
package com.viewpager02.adapter;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentManager;import android.support.v4.app.FragmentStatePagerAdapter;import java.util.List;/** * Created by Administrator on 2017/8/8. */public class MyAdapter extends FragmentStatePagerAdapter { private List<Fragment> list; private List<String> tab_list; public MyAdapter(FragmentManager fm, List<Fragment> list, List<String> tab_list) { super(fm); this.list = list; this.tab_list = tab_list; } @Override public Fragment getItem(int position) { return list.get(position); } @Override public int getCount() { return list==null?0:list.size(); } @Override public CharSequence getPageTitle(int position) { return tab_list.get(position%tab_list.size()); }}
阅读全文
1 0
- TabLayout+ViewPager简单使用
- TabLayout和ViewPager使用
- TabLayout结合ViewPager使用
- Tablayout+Viewpager的使用
- Fragment+ViewPager+TabLayout 使用
- TabLayout+ViewPager使用
- tablayout结合viewPager使用
- TabLayout+ViewPager的使用
- TabLayout的简单使用(TabLayout+Fragment+ViewPager)
- TabLayout+Fragment+ViewPager联合使用
- TabLayout与ViewPager的使用
- ViewPager+Fragment+TabLayout联合使用
- TabLayout结合ViewPager的使用
- TabLayout+viewpager的简单使用
- TabLayout和ViewPager的使用
- TabLayout+ViewPager+Fragment联合使用
- TabLayout,ViewPager,Fragment结合使用
- android TabLayout+ViewPager配合使用
- Shopping 倍增
- SWPU暑假第一场训练赛题解
- html dom创建表格
- Python入门8_方法,属性,迭代器
- BZOJ1691: [Usaco2007 Dec]挑剔的美食家
- TabLayout+ViewPager使用
- Hibernate入门之ORM概述
- Windows Practice_文件搜索器(三)_线程池
- 77. Combinations
- 如何调整linux窗口大小-安装VMWare Tools
- [网络流24题] No3_最小路径覆盖问题
- 分享我的第一次Selenium自动化测试框架开发过程
- 我的博客园定制样式
- 万兆网络UDP速率传输性能测试(发送端)