Android 5(Lollipop):是否可以使通知背景透明?
作者:互联网
有什么方法可以使Android中的通知背景透明吗?我通过将RemoteViews与Layout和NotificationCompat一起使用来创建通知:
RemoteViews rv = new RemoteViews(getPackageName(), R.layout.notification_layout);
NotificationCompat.Builder mBuilder =
new NotificationCompat.Builder(this)
.setSmallIcon(R.drawable.ic_launcher)
.setContent(rv);
布局的LinearLayout的背景设置为透明.但是在棒棒糖中,背景始终显示为白色.
解决方法:
不幸的是,没有办法.
白色是通知行的背景,而不是通知本身.透明的RemoteViews绘制在通知行的顶部.
技术细节:
通知的外观在SystemUI package中定义.白色在colors.xml中定义,并在ActivatableNotificationView.java中使用.
根据源代码,唯一可以覆盖此颜色的位置是setTintColor method,但仅从BaseStatusBar.java and only for media notifications开始调用.
但是,即使对于媒体通知,透明颜色也不起作用,可能是由于setAlpha(1)
.
标签:notifications,android-5-0-lollipop,android 来源: https://codeday.me/bug/20191029/1956314.html