您好,登錄后才能下訂單哦!
小編給大家分享一下Android中基于TabLayout+ViewPager如何實現標簽卡效果,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
先看效果
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如何實現標簽卡效果”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。