一、前言
在开发中,我们常常需要ViewPager结合Fragment一起使用,来实现多页签的切换效果。在以前,我们有以下一系列第三方库来帮我们实现:
而现在,我们可以使用Design support library库的TabLayout来实现了。
二、最终效果图
三、TabLayout的使用
1. 添加依赖
由于TabLayout在design包内,所以首先需要在app目录下的build.gradle中添加以下依赖:
dependencies {
...
compile 'com.android.support:design:23.4.0'
}
2. 创建布局
布局相当简单,只要添加TabLayout和ViewPager的布局即可:
layout/activity_main.xml
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
android:id="@+id/tab_layout"
style="@style/TabLayoutStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
android:id="@+id/view_pager"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:background="@android:color/white"/>
还有其他的属性我习惯在style文件中设置:
values/styles.xml
@color/colorPrimary
@color/colorPrimary
@style/TabTextAppearence
0dp
16sp
false
3. 创建Fragment
package com.sherlockshi.badgedtablayoutpractise;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
/**
* Author: SherlockShi
* Date: 2016-11-01 16:31
* Description:
*/
public class