赞
踩
之前做音乐播放器的需求中有要通知栏部分,发现不同手机显示的系统通知栏千奇百怪不统一,需要适配。分析发现目前大部分手机通知栏不是白色就是深色,因此经过考虑定义两种不同的布局,根据不同通知栏背景颜色来创建不同的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
基本布局只改变了背景颜色和图片。
白色效果如图:
这里我的需求是音频类的通知栏所以自定义的notication的style为MediaStyle
notificationBuilder
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。