android通知栏自定义高度,Android 自定义通知栏适配

本文介绍了如何在Android中自定义通知栏的高度和布局,以适应不同手机系统的显示。通过创建深色和白色两种RemoteViews布局,根据通知栏背景颜色动态设置。同时,详细展示了如何设置Notification的内容、样式和点击事件,以及如何在Android O及以上版本创建NotificationChannel,以确保在各种设备上都能正确显示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

之前做音乐播放器的需求中有要通知栏部分,发现不同手机显示的系统通知栏千奇百怪不统一,需要适配。分析发现目前大部分手机通知栏不是白色就是深色,因此经过考虑定义两种不同的布局,根据不同通知栏背景颜色来创建不同的RemoteViews。我们可以自定义Notification,并且可以设置contentView以及bigContentView从而达到我们想要的布局以及背景颜色。

RemoteViews仅支持FrameLayout、LinearLayout、RelativeLayout三种布局控件和AnalogClock、Chronometer、Button、ImageButton、ImageView、ProgressBar、TextView、ViewFlipper、ListView、GridView、StackView和AdapterViewFlipper这些显示控件,不支持这些类的子类或Android提供的其他控件,否则会引起异常。

下面从我的需求实现来实现两种布局:

深色RemoteViews layout.xml

布局的高度最高应该不超过256dp,但是有些手机锁屏显示不全,因此我限制在64dp,基本上不会有锁屏显示不全问题。

白色RemoteViews layout.xml

基本布局只改变了背景颜色和图片。

白色效果如图:

656993978533d388e3e8a70402ce7322.png

这里我的需求是音频类的通知栏所以自定义的notication的style为MediaStyle

notificationBuilder

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值