代码已经上传至Github:https://github.com/YanYoJun/ViewPagerDemo
先看效果
1、布局文件
<?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"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="com.plbear.yyj.myapplication.MainActivity">
<android.support.design.widget.TabLayout
android:id="@+id/tab"
android:layout_width="match_parent"
android:layout_height="40dp"
app:tabGravity="fill"
app:tabIndicatorColor="#4978ef"
app:tabIndicatorHeight="2dp"
app:tabMode="scrollable"
app:tabSelectedTextColor="#4978ef"
app:tabTextColor="#222222"></android.support.design.widget.TabLayout>
<android.support.v4.view.ViewPager
android:id="@+id/view_pager"
android:layout_width="match_parent"
android:layout_height="wrap_content"></android.support.v4.view.ViewPager>
</LinearLayout>
2、代码实现
package com.plbear.yyj.myapplication
import android.os.Bundle
import android.support.design.widget.Snackbar
import android.support.design.widget.TabLayout
import android.support.v4.app.Fragment
import android.support.v4.app.FragmentPagerAdapter
import android.support.v7.app.AppCompatActivity
import android.view.Menu
import android.view.MenuItem
import kotlinx.android.synthetic.main.activity_main.*
class MainActivity : AppCompatActivity() {
var mFragList = ArrayList<Fragment>()
var adapter = object:FragmentPagerAdapter(supportFragmentManager){
override fun getItem(position: Int): Fragment {
return mFragList[position]
}
override fun getCount(): Int {
return 2
}
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
initViewPager() //先将各个fragment加入到viewpager中
initTabLayout(); //初始化tablayout
}
fun initTabLayout(){
tab.setupWithViewPager(view_pager)
tab.setTabsFromPagerAdapter(adapter)
tab.tabMode = TabLayout.MODE_FIXED
tab.getTabAt(0)?.setText("第一页")
tab.getTabAt(1)?.setText("第二页")
}
fun initViewPager(){
mFragList.add(Fragment1())
mFragList.add(Fragment2())
view_pager.adapter = adapter
}
}
这里需要注意点,需要先将setupWithViewPager和tablayout绑定起来,然后再初始化tab的标签页,这个非常重要,否则会造成tablayout中的文字显示不出来。
总结
以上所述是小编给大家介绍的Android 中基于TabLayout+ViewPager实现标签卡效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对软件开发网网站的支持!
您可能感兴趣的文章:Android ViewPager实现左右滑动翻页效果android自定义ViewPager水平滑动弹性效果Android 中 viewpager 滑动指示器的实例代码Android开发实现的ViewPager引导页功能(动态加载指示器)详解Android中fragment+viewpager实现布局Android实现单页显示3个Item的ViewPager炫酷切换效果Android viewpager自动轮播和小圆点联动效果Android使用ViewPager实现屏幕滑动效果Android实现界面内嵌多种卡片视图(ViewPager、RadioGroup)Android viewpager无限轮播获取网络图片功能Android 中ViewPager中使用WebView的注意事项Android ViewPager实现左右滑动的实例Android UI设计与开发之ViewPager仿微信引导界面以及动画效果Android UI设计与开发之使用ViewPager实现欢迎引导页面Android UI设计与开发之ViewPager介绍和简单实现引导界面Android使用ViewPager实现顶部tabbar切换界面Android ViewPager导航小圆点实现无限循环效果Android ViewPager无限循环滑动并可自动滚动完整实例