c# - 如何在 xamarin 表单中显示进度条通知
问题描述
我正在使用 xamarin 表单,我遇到了这个插件https://github.com/thudugala/Plugin.LocalNotification以便向用户显示通知。但是如何在通知区域显示进度条呢?我找不到如何做到这一点的例子。
这是我用于发送通知的代码
CrossLocalNotifications.Current.Show("title", "body");
上面的例子有跨平台解决方案吗?还是使用依赖服务的正确实现?
解决方案
本地通知插件无法实现您想要实现的目标。但是,扩展库为进度条上显示的进度数据添加一个额外的参数应该是相当简单的。
基本上,您只需要通过调用SetProgress(int max, int progress, bool intermediate)
方法从 Notification Builder 传递两个附加值。这在 Google 的 Android 文档中得到了最好的解释。
您应该添加调用的方法SetProgress()
是ShowNow()
在 Android 特定类/Platform/Droid/NotificationServiceImpl.cs中。当然,您还需要在其他地方进行更改,以便您可以从跨平台代码中提供最大值和进度值。
如果上述解决方案看起来太复杂并且您没有广泛使用该插件,也许您可以自己在 Android 项目中构建通知并使用依赖服务执行该代码。
编辑:我删除了似乎并不适合所有人的 Google 图书链接。相反,这里有一篇来自 Microsoft Docs 的文章,详细介绍了如何创建本地通知。guies 中唯一缺少的附加内容是显示进度条所需的 SetProgress 方法。
另外,请注意您需要一次又一次地提交通知以在进度条中显示进度。检查 Xamarin 论坛中此线程上的第三个回复(来自 Cheesebaron),以获取有关其工作原理的简短说明和一些代码。
推荐阅读
- python - PermissionError: [Errno 1] 在 iPadOS 14 上使用 Pyto 时不允许操作
- angular - 在 rxjs 中过滤主题
- php - 如何在默认情况下列出 YII 命名空间?
- mule - 在 Mac 中导入 Mule 4 不显示 dataweave 元数据
- ios - 在 Cocoapods 中使用预编译时是否可以在源代码和二进制文件之间切换
- ruby-on-rails - Rails 缓存存储:如何使用密码配置 redis_cache_store
- line - 使用 OpenLayers 基于缩放级别显示功能
- flutter - 名为“scrollable_positioned_list”的颤振小部件如何判断它已滚动到顶部?
- php - 如何在不乘以php中的零的情况下获得数组的乘积
- python - 我可以在本地服务器和 Ubuntu 服务器上运行 Django 应用程序吗?