问题标签 [widgetkit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
swift - WidgetKit 未更新
例如,我希望我的小部件每 5 秒更新一次。我不知道为什么它不起作用。代码应该是正确的。
更新代码:
ios - iOS 14 小部件闪烁或冻结,chronod 崩溃
我已经为我的应用程序实现了一个小部件扩展(即一个 iOS 14 小部件,使用 WidgetKit)。通常小部件工作得很好,但偶尔它会进入反复闪烁并最终冻结的状态。我尝试将调试器连接到小部件进程,但它没有捕获任何崩溃或异常。但是,我确实在我的设备日志中看到了 chronod 过程中重复的崩溃(在一分钟内约 25 次)。这些报告看起来基本相同:
因此,很明显该错误与解码 Font 对象有关。我确实在我的应用程序和小部件中使用了可能相关的自定义字体,但它们在第一次显示在小部件中时显示得很好,而且我的应用程序本身没有任何问题(它不使用 SwiftUI )。
看起来导致错误的过程是 UI 状态被编码并缓存在某处,然后未能被解码以供稍后显示。但是这些代码都不归我所有,因此调试起来非常困难。
出了什么问题,如何解决?
swift - 小部件不断在设备屏幕上重新加载
我正在使用带有 CoreData 和 iCloud 的小部件。它们共享同一个 App Group 容器。一切工作正常一点,但自发的小部件开始不断重新加载并在设备屏幕和小部件仪表板(您可以搜索和添加任何小部件的地方)中自行阻止。
它发生在 iPhone 模拟器(我使用 iPhone 8)和物理设备上。在设备上它表现得更好,例如,它可以重新加载一段时间然后停止。
我的想法与它有关,NSPersistentContainer
但我不确定。我试过这些没有运气:
- 延迟加载 Core Data 附带的所有内容:CoreDataStack、PersistentContainer 等。
- 用于更快
container.performBackgroundTask()
地返回数据。getTimeline(in:completion:)
我只测试了 1 条记录,结果是一样的。 - 使用 Core Data 删除所有内容并放置示例代码以显示静态文本 - 有效,重新加载消失,但我需要显示真实数据
在不同的场景中,我看到这些日志消息:
有时会崩溃
我不知道为什么会这样。我很困惑,因为它有时可以工作并显示我的核心数据记录,并正确重新加载时间线,但有时它会发疯。
任何帮助或指导将不胜感激。
Xcode 12.0.1 (12A7300)
设备:iPhone Xs,iOS 14.0.1
swift - SwiftUI iOS 14 小部件倒计时
我有一个带有倒计时的 iOS 14 小部件
当时间少于 1 分钟时,如何将文本颜色更改为红色?
ios - 是否可以在 iOS 14 小部件中动态更新/更改它们的布局(例如视图数量)?
我正在开发我的第一个 iOS 14 小部件。我知道小部件大多是静态的,不能显示动态内容,如动画或。但是是否可以更改小部件中视图的布局/数量?
由于我是 SwiftUI 的新手,因此我看不到任何更改视图内容的方法。
语境:
假设一个 ToDo 应用程序的小部件应显示最多 5 个条目的按钮/链接。但是,如果应用程序中当前只有 3 个条目,那么小部件当然应该只显示 3 个链接。
该应用程序已经提供了 Today Widget。在这里,我通过简单地将固定数量的条目(例如 5 个)的控件(按钮)添加到小部件视图来解决了这个问题。如果应显示较少的条目,则当小部件更新其视图时,未使用的控件将被隐藏。
在 SwiftUI 中创建具有固定数量的条目(链接)的小部件视图是没有问题的。但是如何隐藏/删除未使用的视图?
在 SwiftUI 中,视图是一个some View
变量,我看不到动态更改其内容的方法:
ios - URLImage 永远不会在 SwiftUI 的小部件应用中加载图像
iOS Widget 的简单代码,我已经验证了 meme 加载了来自早期 HTTP 请求的 meme.url 值。我还检查了自己打印 url 文本,这也有效,但我无法使用 URLImage 包加载图像。我也尝试过小部件和内容视图,但没有结果。有任何想法吗?
meme.url
是一个可选的 URL 类型。
网址图片:https ://github.com/dmytro-anokhin/url-image
注意:更具体地说,占位符确实出现,而不是来自 url 的图像。这是一个示例网址:https ://i.redd.it/zey35zvw4gq51.jpg
ios - WidgetPreviewContext 不在框架中工作
我使用新的闪亮的 WidgetKit制作了一个小部件。它看起来不错并且按预期工作。然后我将其所有逻辑放入单独的框架中,以在扩展程序和主应用程序之间共享常量值,并提供可单元测试的目标。在引入框架 SwiftUI 预览后停止工作。我收到错误:Cannot preview in this file - Could not find host for previews
。似乎WidgetPreviewContext不起作用。我想知道为什么。可能是因为我使用的是 macOS Catalina 10.15.6 吗?
swift - 本地化 iOS 14 动态小部件配置
我正在尝试根据应用程序语言为小部件加载不同的配置,但是当我使用类似的东西时:
他们都只在 IntentExtensionTarget 中返回“en”。
这是我使用代码的示例:
swift - iOS 14 小部件检测系统主题更改
我在getTimeline中使用以编程方式生成的 UIImage 构建我的小部件。
所以我需要在getTimeline中知道iOS 主题是 Light 还是 Dark。
我知道如何在 ViewController 中执行此操作traitCollection.userInterfaceStyle == .dark
,但是如何在 Widget 中执行此操作?