一行代码设置 DrawerLayout 全屏效果

DrawerLayout 默认使用时,侧拉出来的效果会有一点缩进效果,既然它是缩进,那我们直接反向操作,给它缩进一个负值不就好了嘛,直接看代码:

<!-- 第二个视图放抽屉 -->
<android.support.design.widget.NavigationView
android:id="@+id/navigation_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="left"
android:layout_marginRight="-65dp" //设置 -65 dp,反向操作
android:tag="left"
app:headerLayout="@layout/nav_header"
app:menu="@menu/drawer_menu" />
来看效果:

     一行代码搞定 DrawerLayout 全屏效果,这种是利用 margin 来达到全屏设置。除了这一种方法,我们还可以从它的 width 宽度入手。这样操作:获取屏幕的宽度像素 widthPixel,再获取侧拉父容器的 LayoutParams 属性,把 height 设置为 widthPixel 也可以搞定。上面的 -65 dp 虽然简单粗暴,但是不同手机可能会有一点点差距。这一种就不会了,看代码:

navigationView = findViewById(R.id.navigation_view);

ViewGroup.LayoutParams mLayoutParams = navigationView.getLayoutParams();
int width = getResources(http://www.amjmh.com/v/).getDisplayMetrics().widthPixels;
mLayoutParams.width = width;
navigationView.setLayoutParams(mLayoutParams);
--------------------- 

猜你喜欢

转载自www.cnblogs.com/liyanyan665/p/11295989.html