大家好。是否有可能使
导航视图
透明?我有自定义布局,尝试为此布局设置50%的透明背景,导航视图
或抽屉布局
。android:background="#80000000"
但是它并没有给出期望的结果。
有人尝试过这个吗?我会感激帮助。
导航视图
透明?我有自定义布局,尝试为此布局设置50%的透明背景,导航视图
或抽屉布局
。android:background="#80000000"
但是它并没有给出期望的结果。
有人尝试过这个吗?我会感激帮助。
您可以尝试以下方法:
navigationView.getBackground().setAlpha(122);
您可以在此处设置透明度,范围从0(完全透明)到255(完全不透明)。
您还可以使用XML值alpha
,它接受双精度值。
范围为0f至1f(含),其中0f表示透明,1f表示不透明:
android:alpha="0.0"
不可见
android:alpha="0.5"
半透明
android:alpha="1.0"
完全可见
NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
View headerView = navigationView.getHeaderView(0);
------
// you can even change only one from above to and keep the other one normally
navigationView.getBackground().setColorFilter(0x80000000, PorterDuff.Mode.MULTIPLY);
headerView.getBackground().setColorFilter(0x80000000, PorterDuff.Mode.MULTIPLY);
输出:
如果您需要更多关于可以应用哪些颜色代码的详细信息,请查看我的答案这里
或者如果您只想设置alpha,请使用navigationView.getBackground().setAlpha(intNumberTill256);
p.s Nav头部暗色是由于我在其XML中设置的背景颜色
public static void main(){}
方法吗? - stackmain()
方法,因为在执行字节码时 JVM 会在类中搜索 main()
方法并从那里开始执行。在 Android 中,每个包都包含一个清单文件。启动点在此清单文件中指定。它从指定类的 onCreate()
方法开始执行应用程序,因此不需要 main()
方法。 - Charuකandroid:background="@android:color/transparent"
app:elevation="0dp"
。 - Iakovos Gufinal Window window = getWindow();
ObjectAnimator animator = ObjectAnimator.ofInt(window,
"navigationBarColor", window.getNavigationBarColor(), Color.TRANSPARENT);
animator.setEvaluator(new ArgbEvaluator());
animator.setDuration(0);
animator.start();
#getNavigationBarColor()
需要 API 21。 - Peter Parker