详解iOS14Widget开发相关及易报错地方处理-创新互联

首先了解下如何创建

创新互联-专业网站定制、快速模板网站建设、高性价比平坝网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式平坝网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖平坝地区。费用合理售后完善,十载实体公司更值得信赖。

Xcode -> File -> New -> Target 找到 Widget Extension

详解iOS14 Widget 开发相关及易报错地方处理

如果你的 Widget 支持用户配置属性,则需要勾选这个(例如天气组件,用户可以选择城市),不支持的话则不用勾选

了解下创建Widget后,系统给我们生成的文件内容

下面这个代码是没有勾选 Include Configuration Intent 的地方

Provider

// Provider,顾名思义为小组件提供信息得一个struct
struct Provider: TimelineProvider {
  public typealias Entry = SimpleEntry
  
  // 编辑屏幕时,左上角选择添加小组件时候,第一次展示小组件会走这个方法
  public func snapshot(with context: Context, completion: @escaping (SimpleEntry) -> ()) {
    
  }

  // 这个方法内可以进行网络请求,拿到的数据保存在对应的 entry 中,调用 completion 之后会到刷新小组件
  public func timeline(with context: Context, completion: @escaping (Timeline) -> ()) {
    // 例如这是一个网络请求
    Network.request { data in
      let entry = SimpleEntry(date: renderDate, data: data)
      let timeline = Timeline(entries: [entry], policy: .after(nextRequestDate))
      completion(timeline)
    }
  }
}


分享名称:详解iOS14Widget开发相关及易报错地方处理-创新互联
分享URL:http://hbruida.cn/article/cocjij.html