首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏学海无涯

    iOS开发之WidgetKit

    iOS 14 Apple 推出了 WidgetKit,Widget 就像一个迷你版的 App,可以快速访问它所提供的信息—比如天气、日历事件、笔记等。 介绍 WidgetKit 通过在 iOS 主屏幕或 macOS 通知中心放置小部件,让用户可以随时访问 App 中的内容。Widget 可以保持更新,从而让用户获得最新信息。 struct Model: TimelineEntry { public let date: Date // 模型结构体 } Provider 遵守TimelineProvider协议,告诉 WidgetKit

    3.3K32发布于 2020-08-17
  • 来自专栏学海无涯

    iOS开发之WidgetKit补充

    在 iOS 14 正式版发布之前我写了一篇博文《iOS开发之WidgetKit》,iOS 14 正式版发布以后,经测试,Apple 改变了 Widget 的 API,所以本文进行一个补充说明(在前文的基础上做了修改 介绍 WidgetKit 通过在 iOS 主屏幕或 macOS 通知中心放置小部件,让用户可以随时访问 App 中的内容。Widget 可以保持更新,从而让用户获得最新信息。 struct Model: TimelineEntry { let date: Date // 显示的内容Model } Provider 遵守TimelineProvider协议,告诉 WidgetKit

    2.4K30发布于 2020-10-29
  • 来自专栏程序员维他命

    Apple Widget:下一个顶级流量入口?

    当系统的 WidgetKit 调用 Reload Timeline API 之后,会要求 Widget Extension 的 Timeline Provider 提供一组 TimelineEntry 值得一提的是,WidgetKit 会把 Timelines 所定义的 Entries 对应的 Views 结构信息缓存到磁盘,然后在刷新的时候才通过 JIT 的方式来渲染。 /creating-a-widget-extension Building Widgets Using WidgetKit and SwiftUI https://developer.apple.com /documentation/widgetkit/building_widgets_using_widgetkit_and_swiftui Making a Configurable Widget https https://developer.apple.com/documentation/widgetkit/keeping-a-widget-up-to-date

    2.4K20发布于 2020-07-29
  • 来自专栏HelloWorld杰少

    iOS14 致敬 Android 之 "Meet Widget"

    TimelineEntry 标识您希望 WidgetKit 更新 Widget 内容的日期,包括 Widget 视图需要渲染自定义类型的属性。 •Placeholder View:WidgetKit 使用一个 SwiftUI 视图来首次渲染。占位符是 Widget 的通用表示形式,没有特定的配置或数据。 当 isPreview 为 true 时,Widget 将在 WidgetKit 库中显示。作为响应,您需要快速创建预览快照。 时间轴由一个或多个时间轴条目以及一个重载策略组成,该重载策略通知 WidgetKit 何时请求后续时间轴。 在呈现 Widget 的内容时,WidgetKit 会忽略交互式元素。

    2K20编辑于 2022-08-04
  • 来自专栏Android点滴积累

    IOS Widget(1):概述

    小组件概述 WidgetKit 通过在 iOS 主屏幕或 macOS 通知中心放置小组件,让用户可以随时访问 App 中的内容。Widget 可以保持更新,从而让用户获得最新信息。 时间线提供者告诉WidgetKit何时更新您的窗口小部件的内容。 ?

    2.1K20发布于 2021-05-06
  • 来自专栏Android点滴积累

    IOS Widget(5):小组件刷新机制

    大纲 系统如何管理小组件刷新 Timeline刷新机制 Timeline刷新机制代码实现 刷新策略建议 时钟刷新策略(只有小时分钟,没有秒) 主动请求重新刷新 系统如何管理小组件刷新 WidgetKit 在一个单独的进程中渲染小组件视图 即使小组件窗口显示在屏幕上,widget extension 也不会持续处于活动状态 为了管理系统负载,WidgetKit使用预算来分配一天中的窗口小组件重载 WidgetKit WidgetKit可能会在多个窗口小组件之间合并重新加载,从而影响窗口小组件重新加载的确切时间。 Timeline刷新机制 ? 该图显示了WidgetKit请求时间线,提供程序生成时间线以及3小时后的时间进度,之后WidgetKit请求新的时间线 ? 该图显示了WidgetKit请求时间线,提供程序生成时间线以及WidgetKit在2小时后请求新时间线的图 Timeline刷新机制代码实现(新增组件时,系统默认就实现了) func getTimeline

    7.4K11发布于 2021-05-13
  • 来自专栏学海无涯

    iOS16适配指南之Live Activity

    import WidgetKit import SwiftUI @main struct UserSportsBundle: WidgetBundle { var body: some Widget import ActivityKit import SwiftUI import WidgetKit // MARK:- ActivityAttributes,需要共享给App与Widget struct

    2.7K10编辑于 2022-12-09
  • 来自专栏iOS开发~

    iOS_SwiftUI_iOS14_Widget

    swift文件里刷新 import WidgetKit // 导入WidgetKit WidgetCenter.shared.reloadAllTimelines() // 刷新所有的widget WidgetCenter.shared.reloadTimelines import WidgetKit @objc @available(iOS 14.0, *) class WWWidgetManager: NSObject { @objc static let

    3K20编辑于 2022-07-20
  • 来自专栏Android点滴积累

    IOS Widget(4-2):创建可配置小组件(动态修改配置数据)

    当用户编辑窗口小部件时,WidgetKit会加载"Intens Extension"以提供动态信息。 // // WidgetConfigIntent.swift // WidgetConfigIntent // import WidgetKit import SwiftUI import Intents

    4K11发布于 2021-05-10
  • 来自专栏学海无涯

    iOS17适配指南之Widget

    label: () -> Label ) } 案例 效果 效果图.gif 实现 import AppIntents import Foundation import SwiftUI import WidgetKit

    1.5K30编辑于 2023-08-24
  • 来自专栏携程技术

    干货 | 携程机票iOS Widget实践

    Widget开发使用苹果新推出的WidgetKit,UI开发只能使用SwiftUI,而Today Extension则使用UIKit。 (实测本地模拟器环境可超过5种,实际发布上线未验证) 5.2 不是所有的SwiftUI组件都可用 WidgetKit限制Widget UI需由SwiftUI实现,但并不是所有SwiftUI的组件都可供Widget 如果遇到不支持的组件,WidgetKit渲染时会忽略。 具体可使用的组件参见官方文档。

    1.9K10编辑于 2022-05-12
  • 来自专栏Swift社区

    SwiftUI 锁屏小组件

    是的,从 watchOS 9 开始,你还可以用 WidgetKit 去实现 watchOS 的复杂性。

    1.9K10编辑于 2022-12-12
  • 来自专栏Android点滴积累

    IOS Widget(2):小组件框架解析

    Configuration Intent”,默认生成如下代码,这里新建的时候小组件的名字是 “Widget1” // // Widget1.swift // Widget1 // import WidgetKit

    1.7K20发布于 2021-05-06
  • 来自专栏Android点滴积累

    IOS Widget(4-1):创建可配置小组件(静态配置数据)

    // // WidgetConfigIntent.swift // WidgetConfigIntent // import WidgetKit import SwiftUI import Intents

    2.1K20发布于 2021-05-10
  • 来自专栏Android点滴积累

    IOS Widget(3):SwiftUI开发小组件布局入门

    布局就讲这么多,入个门差不多了,另外,小组件并不能使用全部的SwiftUI控件,只能使用一些基本的控件,更多详情可以查看官网 https://developer.apple.com/documentation/widgetkit

    4K20发布于 2021-05-10
  • 来自专栏韦弦的偶尔分享

    [译]从 iPhone OS 1.0 到 iOS 14 编程语言的演变

    从这张图中可以更容易地看出每种编程语言的演变: 使用各种编程语言的二进制文件数量 WidgetKit 小部件和 Objective-C 在查看数据以确保它们有意义时,我惊讶地发现所有使用 WidgetKit

    2.8K30编辑于 2021-12-24
  • 来自专栏Swift社区

    Swift 周报 第十八期

    讨论状态初始化器中的 UUID[11] 讨论对于金融计算用 Decimal 还是 Double[12] 推荐博文 在 SwiftUI 中开发灵动岛[13] 摘要: 本文将详细介绍使用 WidgetKit

    2.3K20编辑于 2022-12-12
  • 来自专栏一“技”之长

    在iOS应用中使用实时活动与灵动岛

    创建好Tatget后,模版自带3个文件,其中LiveWidgetLiveActivity中实时活动的核心框架代码,我们做些简单的修改,如下: import ActivityKit import WidgetKit

    3.3K20编辑于 2024-01-05
  • 来自专栏前端达人

    Claude Code iOS开发子代理深度实战:打造你的苹果生态架构师

    BGAppRefreshTask) } } } // WeatherWidget.swift - Widget实现 import WidgetKit import SwiftUI

    79312编辑于 2025-10-09
  • 来自专栏一“技”之长

    iOS14新特性探索之二:App Widget小组件应用

    APP的交互:https://my.oschina.net/u/2340880/blog/711807 需要注意,在iOS 14中,Today Extension相关的接口都已经被废弃,我们需要使用新的WidgetKit

    5.8K51发布于 2020-07-14
领券