ios14-widget


widget 新特点

1.足够克制,使widget和屏幕更加融合

1.1 有限的尺寸:只有3个尺寸,最小是 2*2 的圆角矩形(占用 4 个 App 的位置),还有 4*2 和 4*4 。

1.2有限的位置:对于最小的组件来说,无论是上下左右,只能以 2*2 为移动单位,所以只有 6 个可能的位置

2.空间的利用

2.1 小部件堆栈:

        为了避免各种各样的小部件占据过多屏幕空间,苹果提出了部件堆栈的设计,将多个小组件放在同一位置,通过上下滑动的方式进行查看,这样既可以节省空间,也可以降低在多个页面上查找小部件的交互成本。

 2.2智能堆栈:

同时苹果还内置了智能堆栈 Smart Stack ,集成siri的智能化推荐能力。Siri 会帮用户筛选出最符合当前环境和语境下的小组件内容,突出显示。比如早上会显示新闻天气,上午会自动显示日程,而晚上就会显示你一天的运动量,体现“On-Device AI”。(在不同的时间显示不同的widget)

4.在主屏或负一屏都可以添加

Widget类似于TodayWidget是一个独立运行的程序,需要在项目中进行App Groups的设置才能使其与主程序互通数据,在iOS 14上,Today Extension依然可以使用,但是其功能受限,只能在负一屏展示它,用户不能随意的将其放在指定屏的指定位置。

5.一个App也可以提供多个Widget组件,用户可以选择将其最关心的放置在最重要的位置上,以便最方便的获取信息。对于同一种Widget组件,开发者也可以提供不同的尺寸或不同的布局,这可以提供给用户更多的选择以满足不同用户的偏好。

存在的问题

1.WidgetExtension 使用的是新的WidgetKit,不同于TodayWidget,小组件的UI部分只能够使用SwiftUI来开发,所以需要SwiftUI和Swift基础。

2.Widget只支持3种尺寸systemSmall (2x2)、 systemMedium (4x2)、 systemLarge(4x4)

3.widget不支持连续的实时更新

4.ios14的开发需要安装Xcode 12 beta 版本进行。

    注意,Xocde12 beta 只支持macOS 10.15.4,目前仅发布了测试beta版,正式版官方还没定时间,要等iOS 14正式发布。

踩坑教程:

https://blog.csdn.net/qq_38718912/article/details/107658804

坑:关于timeline,iOS14 Widget是无法主动更新数据的!!!

使用场景

支付小部件: 快捷调用支付宝/微信扫一扫和付钱码

每日一言、每日成语、每日单词

倒计时: 时刻提醒你重要事件

RSSReader: 桌面上就能获取到你想要的最新的资讯

天气:显示当日的天气情况

ToDoList:要做的事情的列表

stock:股票走向

sports:当日的运动量

主要参考链接:

官网链接:

widget:https://developer.apple.com/design/human-interface-guidelines/ios/system-capabilities/widgets

create a widget extension:https://developer.apple.com/documentation/widgetkit/creating-a-widget-extension

keep a widget up to date:https://developer.apple.com/documentation/widgetkit/keeping-a-widget-up-to-date

make a configurable widget:https://developer.apple.com/documentation/widgetkit/making-a-configurable-widget

其他链接:

https://zhuanlan.zhihu.com/p/159573580

https://github.com/Littleor/iWidget

你可能感兴趣的:(ios14-widget)