TimelineEntry Protocol
TimelineEntry
指定显示小组件的日期的类型。
表示小组件内容的当前相关性(relevance)——可选。
定义
protocol TimelineEntry
概述
TimelineProvider创建一个或多个时间线条目,这些日期告诉WidgetKit何时显示一个widget。
要渲染一个widget,WidgetKit会执行widget配置的内容块,传递相应的时间线条目。 当你声明一个符合TimelineEntry的结构时,请包含配置的内容块所需的任何附加信息来渲染widget。下面的代码显示了一个显示游戏角色健康水平的小组件时间线struct。
struct CharacterDetailEntry: TimelineEntry {
var date: Date
var healthLevel: Double
}
小组件配置的内容块作为参数接收条目,然后将相关信息传递给渲染您的小组件的视图。
struct CharacterDetailWidget: Widget {
var body: some WidgetConfiguration {
StaticConfiguration(
kind: "com.mygame.character-detail",
provider: CharacterDetailProvider(),
placeholder: CharacterPlaceholderView()) { entry in
CharacterDetailView(entry: entry)
}
.configurationDisplayName("Character Details")
.description("Displays a character's health and other details")
.supportedFamilies([.systemSmall, .systemMedium, .systemLarge])
}
}
Topics
Configuring Timeline Entry Properties
var date: Date
- WidgetKit渲染小部件的日期。「必须」
var relevance: TimelineEntryRelevance?
小组件的内容与用户的相关性。
「必须」不过提供了默认值,其实也是一个可选项。