Scaffold是一个脚手架项目。如果你新开始一个项目,可以从本项目开始,项目介绍传送门,仓库传送门。
本文介绍项目内的自定义组件BottomNavigationLayout。其为底部导航栏,相比系统自带的,支持更多特性。
使用
子view除了使用下文中的BottomNavigationItem外,还可以是任意自定义view,只要将该view实现接口CheckableItemInterface即可。
<com.vgaw.scaffold.view.bottomnavigation.BottomNavigationLayout
android:id="@+id/bottom_nav_bottom_nav_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true">
<com.vgaw.scaffold.view.bottomnavigation.BottomNavigationItem
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
app:bottomNavName="tab0"
app:bottomNavIcon="@drawable/main_bottom_nav_icon"
app:bottomNavIconChecked="@drawable/main_bottom_nav_icon_checked"/>
<com.vgaw.scaffold.view.bottomnavigation.BottomNavigationItem
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
app:bottomNavName="tab1"
app:bottomNavIcon="@drawable/main_bottom_nav_icon"
app:bottomNavIconChecked="@drawable/main_bottom_nav_icon_checked"/>
<com.vgaw.scaffold.view.bottomnavigation.BottomNavigationItem
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
app:bottomNavName="tab2"
app:bottomNavIcon="@drawable/main_bottom_nav_icon"
app:bottomNavIconChecked="@drawable/main_bottom_nav_icon_checked"/>
</com.vgaw.scaffold.view.bottomnavigation.BottomNavigationLayout>