implementation'com.roughike:bottom-bar:2.3.1'
相对于的版本:implementation'com.android.support:appcompat-v7:26.1.0'
bottombar使用的方法:
1.两个xml页面
<com.roughike.bottombar.BottomBar
android:id="@+id/bottomBar"
android:layout_width="match_parent"
android:layout_height="60dp"
android:layout_alignParentBottom="true"
app:bb_tabXmlResource="@xml/bottombar_tabs" />
<?xml version="1.0" encoding="utf-8"?>
id="@+id/tab_home"
icon="@mipmap/ic_bottom_home_icon"
title="首页" />
id="@+id/tab_mv"
icon="@mipmap/ic_bottom_mv_unselect"
title="MV" />
id="@+id/tab_vbang"
icon="@mipmap/ic_bottom_vlist_unselect"
title="V榜" />
id="@+id/tab_yuedan"
icon="@mipmap/ic_bottom_mvlist_unselect"
title="悦单" />
2. fragment控制:
class FragmentUtilprivate constructor(){
val homeFragment by lazy { HomeFragment()}
val mvFragment by lazy { MvFragment()}
val vbangFragment by lazy { VBangFragment()}
val yuedanFragment by lazy { YueDanFragment()}
companion object {
val fragmentUtil by lazy { FragmentUtil()}
}
fun getFragment(tabId:Int): BaseFragment?{
when(tabId){
R.id.tab_home->return homeFragment
R.id.tab_mv->return mvFragment
R.id.tab_vbang->return vbangFragment
R.id.tab_yuedan->return yuedanFragment
}
return null
}
}
3.mainactivity
override fun initListener() {
bottomBar.setOnTabSelectListener{
val transaction =supportFragmentManager.beginTransaction()
transaction.replace(R.id.container, FragmentUtil.fragmentUtil.getFragment(it),it.toString())
transaction.commit()
}
}
网友评论