我想知道是否可以在今天的小部件中更新计时器的文本标签.
我环顾四周但没有帮助我.
我环顾四周但没有帮助我.
解决方法
是的你可以.我刚刚测试过它的确有效.您只需将计时器添加到主运行循环NSRunLoopCommonModes:
RunLoop.main.add(yourTimerName,forMode: .commonModes)
import NotificationCenter class TodayViewController: UIViewController,NCWidgetProviding { @IBOutlet weak var strTimer: UILabel! var timer = Timer() func updateInfo() { strTimer.text = Date().description } override func viewDidLoad() { super.viewDidLoad() timer = Timer.scheduledTimer(timeInterval: 1,target: self,selector: #selector(updateInfo),userInfo: nil,repeats: true) RunLoop.main.add(timer,forMode: .commonModes) } func widgetPerformUpdate(completionHandler: @escaping (NCUpdateResult) -> Void) { completionHandler(.newData) } }