TabLayout的简单应用

来源:互联网 发布:淘宝买家分数 编辑:程序博客网 时间:2024/05/17 09:00

我使用的 android studio进行开发的,所以引用TabLayout很简单,只要在build.gradle中加入compile'com.android.support:design:26+''即可。

注意事项

1.要添加依赖

2.添加模式和关联

3.导包一定要导

android.support.design.widget.TabLayout

 //设置TabLayout的模式       tab.setTabMode(TabLayout.MODE_FIXED);       //关联 TabLayout加载viewpager          tab.setupWithViewPager(vp);
3.在适配器中添加

 //需要重写个返回标题的方法;        @Override        public CharSequence getPageTitle(int position) {            return tablist.get(position);        }

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:app="http://schemas.android.com/apk/res-auto"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    tools:context="com.bawei.day14_mytablelayout.MainActivity"    android:orientation="vertical">  <android.support.design.widget.TabLayout      android:id="@+id/tab"      app:tabIndicatorColor="@color/colorPrimary"    // 下方滚动的下划线颜色       app:tabSelectedTextColor="@color/colorPrimary"// tab被选中后,文字的颜色       app:tabTextColor="@color/colorPrimary"      // tab默认的文字颜色        android:layout_width="match_parent"      android:layout_height="wrap_content"/>    <android.support.v4.view.ViewPager        android:id="@+id/vp"        android:layout_width="match_parent"        android:layout_height="0dp"        android:layout_weight="1" /></LinearLayout>
public class MainActivity extends AppCompatActivity {    private ViewPager vp;    List<Fragment> list=new ArrayList<>();    List<String>     tablist=new ArrayList<>();    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);       initData();      TabLayout tab = findViewById(R.id.tab);       vp = findViewById(R.id.vp);       Myadaper m=new Myadaper(getSupportFragmentManager());       vp.setAdapter(m);       //设置TabLayout的模式       tab.setTabMode(TabLayout.MODE_FIXED);       //关联 TabLayout加载viewpager          tab.setupWithViewPager(vp);    }    private void initData() {        for (int i=0;i<4;i++){            list.add(new Myfragment());            tablist.add("美女"+i+"号");        }    }    class Myadaper extends FragmentPagerAdapter {        public Myadaper(FragmentManager fm) {            super(fm);        }        @Override        public Fragment getItem(int position) {            return list.get(position);        }        @Override        public int getCount() {            return list.size();        }        //需要重写个返回标题的方法;        @Override        public CharSequence getPageTitle(int position) {            return tablist.get(position);        }    }}