是否可以用一些文本/整数覆盖通知图标?还是可以即时生成自定义图标?
例如,我为我的通知显示了当前图标,我希望能够在红色框中显示例如数字 2。
由于这不是通知计数(所以不是红色气泡),因此在通知中设置“数字”将不起作用。
我是否必须为我希望显示的每个可能的数字创建一个单独的图标?还是有更好的方法来实现这一目标?
是否可以用一些文本/整数覆盖通知图标?还是可以即时生成自定义图标?
例如,我为我的通知显示了当前图标,我希望能够在红色框中显示例如数字 2。
由于这不是通知计数(所以不是红色气泡),因此在通知中设置“数字”将不起作用。
我是否必须为我希望显示的每个可能的数字创建一个单独的图标?还是有更好的方法来实现这一目标?
尝试使用 AnimationDrawable 的。您可以使用它们将多个可绘制对象组合成一个,然后选择要显示的。我真的认为,这是要走的路。
更多信息:AnimationDrawable
当然,您必须为要显示的所有整数提供单独的可绘制对象,但是这样,您可以轻松更改通知的外观
有两种方法:
setLargeIcon(Bitmap icon)
和
setSmallIcon(int icon)
由于小图标似乎只需要一个资源 ID,我认为您必须为您想要的每个可能的数字提供一个可绘制资源,然后您可以选择在运行时使用哪一个。
然而,大图标需要一个位图,因此您应该能够使用一些 java 代码生成一个并传递它。
说实话,虽然我不完全知道大图标和小图标之间的区别是什么。一般来说,我对通知没有太多经验。您可能会走运并发现 setLargeIcon 可以满足您的需要。但也可能是您只能对下拉通知栏时显示的图像使用 Bitmap 对象,而不是在折叠时显示的图像。