iT邦幫忙

2025 iThome 鐵人賽

DAY 19
0
Mobile Development

Xcode x Swift Vibe coding進階開發之旅系列 第 19

Xcode x Swift Vibe coding進階開發之旅 第十九天 點名系統(12) 修正時間會停止問題

  • 分享至 

  • xImage
  •  

說明

剛剛發現在生命週期的viewWillDisappear裡有刪除時鐘的方法,卻沒有恢復計時器的方法導致時中暫停,我們來看看 AI如和處裡?/images/emoticon/emoticon03.gif/images/emoticon/emoticon08.gif

指令

如何在保留 disapper 的情況下 使時間停止不會出現

回答

https://ithelp.ithome.com.tw/upload/images/20251003/20168187lmaieRgkZE.png

程式

  // 添加一個標誌來記錄定時器狀態
    private var timerWasRunning = false
    
     override func viewWillDisappear(_ animated: Bool) {
        super.viewWillDisappear(animated)
        
        // 記錄定時器狀態並停止定時器
        timerWasRunning = timer != nil
        timer?.invalidate()
        timer = nil
    }
    
    override func viewDidAppear(_ animated: Bool) {
        super.viewDidAppear(animated)
        
        // 如果定時器之前正在運行,則重新啟動
        if timerWasRunning || timer == nil {
            startTimeUpdater()
        }
        
        // 無論如何都更新一次時間,確保顯示最新時間
        updateTimeLabel()
    }

/images/emoticon/emoticon07.gif


上一篇
Xcode x Swift Vibe coding進階開發之旅 第十八天 點名系統(11) 增加活動狀態功能
下一篇
Xcode x Swift Vibe coding進階開發之旅 第二十天 點名系統(13) 資料匯出成scv檔
系列文
Xcode x Swift Vibe coding進階開發之旅22
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言