Today Widget 是 IOS 上的小部件,可以在 Notification Center 和锁屏界面显示信息和交互。
使用 Today Widget 的基本步骤:
- 在 Xcode 中选择 File -> New -> Target… 创建一个 Today Widget 扩展。
- 选择 Widget 的尺寸,一般选择 Medium 或 Large。
- 会自动创建一个 TodayViewController.swift 文件,我们需要在其中设计 Widget 的界面和交互。
- 使用 UIView、UILabel、UIButton 等组件来显示内容。
- 实现 widgetPerformUpdate(completionHandler:) 方法来更新 Widget 数据。
- 在 Info.plist 设置 Widget 的 bundle identifier。
- 运行项目,Widget 会自动安装到设备上。用户可以在 Notification Center 中打开和关闭 Widget。
- 更新 Widget 数据时调用 WidgetCenter.shared.reloadTimelines(ofKind: “com.your.bundleID”) 来刷新界面。
下面是一个简单的示例:
TodayViewController.swift:
swift
import UIKit
import NotificationCenter
class TodayViewController: UIViewController, NCWidgetProviding {
@IBOutlet weak var label: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
label.text = "Welcome to Today Widget!"
}
func widgetPerformUpdate(completionHandler: (@escaping (NCUpdateResult) -> Void)) {
label.text = "Updated at \(Date().description)"
completionHandler(NCUpdateResult.newData)
}
}
Info.plist:
xml
<key>CFBundleIdentifier</key>
<string>com.example.TodayWidget</string>
通过 Today Widget,我们可以为用户提供重要信息的快速查看和小交互。它增强了 App 的体验,在项目开发中推荐使用 Today Widget。