美文网首页
Widget 学习 TimelineEntry

Widget 学习 TimelineEntry

作者: 弑神指 | 来源:发表于2020-11-05 10:21 被阅读0次

    TimelineEntry (时间线条目)

    一种类型,指定显示窗口小部件的日期,并可选地指示窗口小部件内容的当前相关性。

    宣言

    protocol TimeLineEntry
    

    总览

    TimelineProvider创建一个或多个带有日期的时间轴条目,告诉WidgetKit何时显示小部件。
    为了呈现小部件,WidgetKit执行小部件配置的内容块,传递相应的时间轴条目。

    *在声明符合TimelineEntry的结构时,请包括配置内容块呈现窗口小部件所需的所有其他信息。
    以下代码显示了显示游戏角色健康状况的小部件的时间线输入结构。

    struct CharacterDetailEntry: TimelineEntry {
        var date: Date
        var healthLevel: Double
    }
    

    小部件配置的内容块接收该条目作为参数,然后将相关信息传递到呈现小部件的视图。
    代码如下:

    struct CharacterDetailWidget: Widget {
    //  CharacterDetailProvider()
        var body: some WidgetConfiguration {
            StaticConfiguration(
                kind: "com.mygame.character-detail",
                provider: CharacterDetailProvider()) { entry in
                CharacterDetailView(entry: entry)
            }
            .configurationDisplayName("Character Details")
            .description("Displays a character's health and other details")
            .supportedFamilies([.systemSmall, .systemMedium, .systemLarge])
        }
    }
    

    话题

    配置时间线条目属性

    var date: Date

    (需要)WidgetKit渲染小部件的日期。

    var relevance: TimelineEntryRelevance

    (需要,提供了默认实现)窗口小部件内容与用户的相关性。

    另外阅读

    时间线管理

    使小部件保持最新

    计划小部件的时间轴,以使用动态视图及时显示相关信息,并在发生变化时更新时间轴。

    protocol TimelineProvider

    建议WidgetKit何时更新窗口小部件显示的类型。

    protocol IntentTimelineProvider

    建议WidgetKit何时更新用户可配置的窗口小部件显示的类型。

    struct TimelineProviderContext

    一个对象,其中包含有关如何渲染小部件的详细信息,包括其大小以及它是否出现在小部件库中。

    struct Timeline

    一个对象,指定WidgetKit更新窗口小部件视图的日期。

    class WidgetCenter

    包含用户配置的小部件列表的对象,用于重新加载小部件时间线。

    相关文章

      网友评论

          本文标题:Widget 学习 TimelineEntry

          本文链接:https://www.haomeiwen.com/subject/zkbgvktx.html