转换为NotificationCompat会破坏SetSmallIcon功能吗?

时间:2019-04-26 10:13:58

标签: xamarin notifications

在将Notification迁移到Compat库版本时遇到了一些麻烦:在主库中,我以前只是将图标转换为位图(api 23及更高版本)并执行SetSmallIcon(icon)以显示动态通知。图标。

但是Compat版本只有一个int参数(我假设它是资源ID),而且我找不到关于如何在其中生成/转换/添加我的位图和/或图标的任何信息。

位图基本上是生成的文本,它通过画布转换为位图,显示最重要的信息。

我的问题是:是否有一种方法可以将类变量转换为资源,或者获取其ID就像资源ID一样工作,或者有其他方法可以使我实际添加在运行时创建的位图?

1 个答案:

答案 0 :(得分:0)

您可以使用此代码。引用使用icon的行

var notificationBuilder = new NotificationCompat.Builder(this)
                 .SetSmallIcon(Resource.Drawable.NotifIconSis).SetColor(Android.Graphics.Color.Rgb(33, 150, 243))
                 .SetContentTitle(user.Organization)
                 .SetSubText(user.ModuleName).SetStyle(new NotificationCompat.BigTextStyle().BigText(user.BodyText))
                 .SetContentText(user.BodyText)
                 .SetAutoCancel(true)
                 .SetContentIntent(pendingIntent)
                 .Build();
var notificationManager = NotificationManagerCompat.From(Application.Context);
//var notification = RingtoneManager.GetDefaultUri(RingtoneType.Notification);
//var mp = MediaPlayer.Create(ApplicationContext, notification);
//mp.Start();
//notificationManager.Notify(redomId, notificationBuilder);