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'中完成 –