Swift:在展开segue后恢复上一个视图控制器

时间:2017-06-24 09:53:53

标签: ios swift segue unwind-segue

我有两个快速的UI视图控制器:

class AViewController:UIViewController {
    [...]
    func OnBluetoothEventA() {
        performSegue(withIdentifier: "BSegue", sender: self)
    }
    func OnBluetoothEventB() {
        // Go back to this viewcontroller!
    }
}

class BViewController:UIViewController {
    [...]
}

当用户关闭蓝牙时,我会执行一个segue来显示动画和消息。

当用户打开蓝牙时,我想恢复之前的ViewControl。

哪种方式最快捷?

1 个答案:

答案 0 :(得分:0)

我在BViewController中创建了一个新的蓝牙管理器,然后我使用了dismiss:

extension ConnectAlertViewController: CBPeripheralManagerDelegate {
    // MARK: Bluetooth
    func peripheralManagerDidUpdateState(_ peripheral: CBPeripheralManager) {
        switch(peripheral.state) {
        case .poweredOn:
            self.dismiss(animated: true)
            break
        default:
            break
        }
    }
}