2.NavigationView

来源:互联网 发布:电力通信网络组网分析 编辑:程序博客网 时间:2024/06/05 16:57
2.NavigationView

是侧滑导航栏,虽然在之前的版本中已经有侧滑栏了,但是在5.0后给出了使用更加便捷,并自带特效的NavigationView作为导航栏的标准。
使用方法:
首先在布局文件中使用DrawerLayout作为根布局:

在DrawerLayout 中添加NavigationView

layout_gravity 属性可以控制导航栏是从左边还是右边滑出

其中headerLayout 属性需要给入一个作文导航头(header)的布局

menu属性需要给出一个菜单menu配置文件

在res/menu文件夹下添加: menu_nav.xml   

<android.support.v4.widget.DrawerLayout<!--左边的侧滑菜单设置android:layout_gravity="left"才会显示在左边 --><android.support.design.widget.NavigationView        android:id="@+id/navigation_view"        android:layout_width="200dp"        android:layout_height="match_parent"        android:layout_gravity="left"        app:headerLayout="@layout/navigation_header"        app:menu="@menu/menu_nav"/></android.support.v4.widget.DrawerLayout>



这样就完成了导航菜单的配置,运行就可以看到效果了。

如果菜单长度过长的话NavigationView是可以滚动的,而且默认带有滚动条。

虽然NavigationView有去掉滚动条的方法但是尝试了各种方法发现并没有什么乱用,于是查看源码发现,并不是NavigationView的滚动产生的滚动条,而是NavigationView内封装了可滚动的View,这大概是一个bug。

用下面的方式实测可以取消滚动条:

NavigationView navi = (NavigationView) findViewById(R.id.navi); navi.getChildAt(0).setVerticalScrollBarEnabled(false);

0 0
原创粉丝点击