iOS 14 小部件中的动画

Posted

技术标签:

【中文标题】iOS 14 小部件中的动画【英文标题】:Animation in iOS 14 widget 【发布时间】:2021-02-06 14:55:53 【问题描述】:

我找不到在 Widget 中实现某种 ProgressBar 的解决方案。我明白了,例如,如果具有 .timer 类型,则应该更改 Text 组件。我看到了默认的小部件时钟,带有漂亮的移动箭头动画。但是我可以在小部件中实现自定义动画吗?

【问题讨论】:

据我所知,小部件中不允许自定义动画(可能出于优化原因)。 我找不到关于它的参考,但我也看到默认时钟小部件上的动画。 我也没有找到任何官方参考资料,但我无法让动画在小部件中工作。对于默认的 Clock 小部件,Apple 可能正在使用私有 API 或其他方式来实现(这不是第一次)。 @rraphael。我想你是正确的。这可能是 Apple 独有的功能。像时钟图标动画或日历图标每天更新,只有 Apple 可以使用的功能。 有第三方应用,有手时钟动画,不知道是怎么做的。 【参考方案1】:

据 Developer Apple Forum 上的框架工程师称:

动画和平移/缩放手势在使用 WidgetKits 构建的小部件中不起作用。结帐https://developer.apple.com/videos/play/wwdc2020/10028/,哪些有效,哪些无效。

在上面提到的 WWDC20 Meet WidgetKit 视频中,Apple 强调 Widget 不是迷你应用,因此它们不支持基于手势的视图(如滚动视图)或动画。小部件仅具有可浏览的信息。来自WWDC20 Meet WidgetKit Video Transcript:

这些小部件不是迷你应用。我们不支持小部件内的滚动、开关和其他系统控件等交互元素,也不支持视频或动画图像。

【讨论】:

以上是关于iOS 14 小部件中的动画的主要内容,如果未能解决你的问题,请参考以下文章

如何本地化 iOS 14 小部件的名称 (CFBundleDisplayName)

iOS Todays 小部件扩展 - 动画 UISlider

UIVisualEffectView 在 iOS 14 小部件中不起作用

iOS 14 小部件的模糊背景

iOS 14 小部件没有动态更改

iOS 14 中设备之间的小部件行为不一致