You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

viewDidAppear中无法操作IBOutlets的问题求助

viewDidAppear中无法操作IBOutlets的问题求助

我是Swift编程的新手,现在尝试用UIProgressView做一个假的进度条。我把代码写在了viewDidAppear方法里,想让视图控制器出现后就开始运行,但所有的IBOutlet变量都没法正常工作。

有没有人知道怎么解决这个问题?我猜可能是这些变量在viewDidAppear里不被识别,但完全不知道原因。

以下是我的代码:

class ViewController: UIViewController {

    
    @IBOutlet  weak var label: UILabel!
    @IBOutlet  weak var pBar: UIProgressView!
    
    
    
    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view.
        label.text = String(0) + "%" //Initialize Label Value
        
        
    }
    override func viewDidAppear(_ animated: Bool) {

            while pBar.progress < 1{
                pBar.progress += 0.1
                sleep(2)
                label.text = String(Int(pBar.progress * 100))+"%"
                print(pBar.progress)
            }
            //sleep(10) // Short delay for effect at 100 percent :)
            performSegue(withIdentifier: "progressComplete", sender: nil) // 这里用了现代Swift语法实现跳转
            
        
    }
    //Function to make Progress bar work
    

}

我试过把代码放到单独的函数里,但还是不行。我只是想让进度条的值能随着while循环更新。

备注:内容来源于stack exchange,提问作者nshoobs_school

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.15 09:58:10