[英]Creating custom notification with xamarin.android
我一直在尝试使用 Xamarin.android 制作完全自定义的通知。
我的项目针对 14 个最小 API,因此支持扩展通知。 我正在尝试为所有 API 实现相同的外观,因此我正在使用Android.Support.V4.App.NotificationCompat.Builder
。
我发现你可以使用setCustomContentView来设置一个自定义视图,它会完全改变通知的布局,这就是我的目标。
这是我尝试运行的代码:
RemoteViews widgetLayout = new RemoteViews(PackageName,Resource.Layout.SingleNotificationLayout);
NotificationCompat.Builder builder = new NotificationCompat.Builder(this)
.SetCustomBigContentView(widgetLayout);
notificationManager.Notify(notificationId, builder.Build());
其中Resource.Layout.SingleNotificationLayout
是通知的布局文件。我从MainActiviy
运行此代码。代码是从这里修改的。
我面临的错误是SetCustomBigContentView
,特别是:
'NotificationCompat.Builder' does not contain a definition for 'SetCustomBigContentView' and no extension method 'SetCustomBigContentView' accepting a first argument of type 'NotificationCompat.Builder' could be found (are you missing a using directive or an assembly reference?)
这是我安装的软件包:
<package id="Xamarin.Android.Support.Animated.Vector.Drawable" version="23.4.0.1" targetFramework="monoandroid70" />
<package id="Xamarin.Android.Support.Design" version="23.4.0.1" targetFramework="monoandroid70" />
<package id="Xamarin.Android.Support.v14.Preference" version="23.4.0.1" targetFramework="monoandroid70" />
<package id="Xamarin.Android.Support.v4" version="23.4.0.1" targetFramework="monoandroid70" />
<package id="Xamarin.Android.Support.v7.AppCompat" version="23.4.0.1" targetFramework="monoandroid70" />
<package id="Xamarin.Android.Support.v7.GridLayout" version="23.4.0.1" targetFramework="monoandroid70" />
<package id="Xamarin.Android.Support.v7.Preference" version="23.4.0.1" targetFramework="monoandroid70" />
<package id="Xamarin.Android.Support.v7.RecyclerView" version="23.4.0.1" targetFramework="monoandroid70" />
<package id="Xamarin.Android.Support.Vector.Drawable" version="23.4.0.1" targetFramework="monoandroid70" />
我错过了什么? 等效函数的命名是否不同?
您需要为支持库使用最新的预发布包。 特别是https://www.nuget.org/packages/Xamarin.Android.Support.v4/24.2.1-rc1 ,其中包括一个新程序集: Xamarin.Android.Support.Compat
。 这将包括您正在寻找的方法:
EX:在Xamarin.Android.Support.Compat
中查看 Xamarin.Android.Support.Compat
但是,它不包含在当前的稳定版 (23.4.0.1) 中,正如您在此处看到的:
EX:在Xamarin.Android.Support.v4
中查看 Xamarin.Android.Support.v4
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.