简单实用的底部导航栏
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
dependencies {
···
implementation 'com.github.wy749814530:NavigationBar:1.0.2'
}
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/fl_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/gray_999999">
<androidx.viewpager.widget.ViewPager
android:id="@+id/viewPager"
android:layout_width="match_parent"
android:layout_height="match_parent">
</androidx.viewpager.widget.ViewPager>
<com.wang.navigation.NavigationView
android:id="@+id/navigationView"
android:layout_width="match_parent"
android:layout_height="60dp"
android:layout_gravity="bottom" />
</FrameLayout>
navigationView.setContainer(R.id.fl_container)
.setBackgroudColor(ContextCompat.getColor(this, R.color.white_ffffff)).setColors(
ContextCompat.getColor(this, R.color.gray_999999),
ContextCompat.getColor(this, R.color.blue_49a6f6)
).addItem(
FragmnetA::class.java,
"AAAA",
R.mipmap.ic_launcher,
R.mipmap.ic_launcher_round
)
.addItem(
FragmnetB::class.java,
"BBBB",
R.mipmap.ic_launcher,
R.mipmap.ic_launcher_round
).addRoundItem(
FragmnetC::class.java,
"CCCC",
R.mipmap.ic_launcher,
R.mipmap.ic_launcher_round
).addRoundItem(
FragmnetD::class.java,
"",
R.mipmap.ic_launcher,
R.mipmap.ic_launcher_round
)
.addItem(
FragmnetE::class.java,
"EEEE",
R.mipmap.ic_launcher,
R.mipmap.ic_launcher_round
).build().setWithViewPager(viewPager).applay();
navigationView.setTabItemSelectedListener(object : OnTabItemSelectedListener {
override fun onSelected(index: Int, old: Int) {
Toast.makeText(
this@MainActivity,
"== onSelected index $index , old is $old==",
Toast.LENGTH_SHORT
).show()
}
override fun onRepeat(index: Int) {
Toast.makeText(
this@MainActivity,
"== onSelected index $index ==",
Toast.LENGTH_SHORT
).show()
}
})
fun setContainer(containerId: Int): NavigationView
fun setDefaultSelect(firstCheckedIndex: Int): NavigationView
fun addRoundItem(
fragmentClass: Class<*>,
title: String,
defaultIcon: Int,
selectIcon: Int
): NavigationView
fun addItem(
fragmentClass: Class<*>,
title: String,
defaultIcon: Int,
selectIcon: Int
): NavigationView
fun build(): NavigationView.NavigationPager
fun setWithViewPager(viewPager: ViewPager?): NavigationPager
fun applay()
fun setSelect(index: Int)
fun getItemCount(): Int
fun getFragmentByIndex(index: Int): Fragment?
fun getItemTitle(index: Int): String?
fun setBackgroudColor(backgroudColor: Int): NavigationView
fun setColors(defaultColor: Int, selectColor: Int): NavigationView
fun setTextSize(titleSizeInDp: Int): NavigationView
// 如果是圆形突出Item大小会自动调整
fun setIconWidth(iconWidth: Int): NavigationView
fun setIconHeight(iconHeight: Int): NavigationView
fun setMargin(titleIconMargin: Int): NavigationView
本文地址:https://blog.csdn.net/weixin_42169702/article/details/107380467
如对本文有疑问, 点击进行留言回复!!
网友评论