首页 > 解决方案 > 当我在 SwiftUI 中使用 Timer 时,为什么我的应用程序会崩溃?

问题描述

我想在 SwiftUI 视图中使用带有计时器的视图控制器,但它崩溃了。

class TimeViewController : UIViewController {

    var time = 0
    var timer : Timer = Timer.scheduledTimer(timeInterval: 1, target: self, selector: #selector(startTimer), userInfo: nil, repeats: true)

    override func viewDidLoad() {
        super.viewDidLoad()
        startTimer()
    }

    @objc func startTimer() {
        time += 1
        print(time)
    }
     }


    struct TimeVC : UIViewControllerRepresentable {
        typealias UIViewControllerType = TimeViewController

        func makeUIViewController(context: UIViewControllerRepresentableContext<TimeVC>) -> TimeVC.UIViewControllerType {
            return TimeViewController()
        }

        func updateUIViewController(_ uiViewController: TimeVC.UIViewControllerType, context: UIViewControllerRepresentableContext<TimeVC>) {
        } }

    struct ContentView : View {
        var body: some View {
            TimeVC()
        } }

标签: swiftxcodeswiftuixcode11ios13

解决方案


推荐阅读