禁用导航抽屉中的暗淡效果

52
有没有一种方法可以禁用 Android 导航抽屉视图中的背景视图的黑暗淡入淡出效果?
4个回答

122

您可以使用setScrimColor(int color)方法。默认情况下,使用的颜色是0x99000000。因此,如果您不希望有褪色背景,请在此方法中设置透明颜色。

mDrawerLayout.setScrimColor(getResources().getColor(android.R.color.transparent));

4
getColor()已被弃用,您可以使用以下方法:mDrawerLayout.setScrimColor(ContextCompat.getColor(getApplicationContext(), android.R.color.transparent)); - eldivino87
文本颜色恢复正常了,但是我在导航抽屉中使用的项目图标仍然有点模糊。为什么会这样? - Femn Dharamshi
Android/AndroidX 移除导航抽屉中的背景颜色和阴影。https://dev59.com/6lwZ5IYBdhLWcg3wWfGl#58874165 - Renish Patel

37

对于koso的回答,还可以直接从Color类中调用颜色,方法如下:

mDrawerLayout.setScrimColor(Color.TRANSPARENT);

8

drawerLayout.setScrimColor(Color.parseColor("#99000000"));

// 用于实现深色渐变效果

                            or

drawerLayout.setScrimColor(Color.parseColor("#33000000"));

// 用于轻微淡化效果。

                            or

drawerLayout.setScrimColor(Color.TRANSPARENT);

// 设置不透明度为0,即取消淡入淡出效果


这很有帮助,但每行都缺少一个尾部的闭括号,最后一行应该是 drawerLayout.setScrimColor(Color.TRANSPARENT); - Greg Brown

4
您可以设置自定义阴影:
mDrawerLayout.setDrawerShadow(R.drawable.drawer_shadow, GravityCompat.START);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接