0
我遇到了奇怪的事情,不明白爲什麼它不工作。檢查連接,並執行第二個視圖控制器的繼續
我正在使用此項目來檢查互聯網連接的類型。我的想法是檢查連接,並跳轉到登錄頁面或停留在第一個控制器上,如果設備沒有連接。
這裏是我的代碼:
class ViewController: UIViewController {
@IBOutlet weak var connectionTypeLabel: UILabel!
@IBAction func test(_ sender: Any) {
self.performSegue(withIdentifier: "showLogin", sender: self)
}
let status = Reach().connectionStatus()
override func viewDidLoad() {
super.viewDidLoad()
self.connectionTypeLabel.text = ""
switch self.status {
case .unknown, .offline:
self.connectionTypeLabel.text = "No Connected"
case .online(.wwan):
self.connectionTypeLabel.text = "Connected!"
self.performSegue(withIdentifier: "showLogin", sender: self)
case .online(.wiFi):
self.connectionTypeLabel.text = "Connected!"
self.performSegue(withIdentifier: "showLogin", sender: self)
}
}
我嘗試都viewDidLoad中和viewWillAppear中的方法。
我真的不明白爲什麼文本標籤正確地更改其文本,並且程序沒有進入登錄視圖控制器。
我創建了一個測試按鈕來檢查performSegue函數是否工作,它工作得很好。我對viewDidLoad
不知道爲什麼它不viewDidLoad方法裏面工作
同樣的故事:檢查正在工作,但執行的不是 – Almazini
你確定你在故事板上正確設置了嗎?設置斷點並查看segue是否被調用 – Tj3n
由於視圖尚未出現,因此無法在'viewWillAppear'中執行segges。它需要在'viewDidAppear'中完成 –