У меня проблема с переменной в AppDelegate - PullRequest
0 голосов
/ 26 июня 2019

У меня ошибка в моем коде при попытке вернуть переменную, которая находится в делегате приложения, в viewController, он возвращает нулевое значение и, следовательно, не назначает делегата

class AppDelegate: UIResponder, UIApplicationDelegate {

    var window: UIWindow?
    var client: SINClient!
.
.
.
}

class ViewController: UIViewController, SINCallClientDelegate {

    @IBOutlet weak var destination: UITextField!

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view.
    }

    func client() -> SINClient? {
        return (UIApplication.shared.delegate as! AppDelegate).client
    }

    override func awakeFromNib() {
        super.awakeFromNib()
        self.client()?.call().delegate = self
    }

    @IBAction func actionCall(_ sender: UIButton) {
        if destination.text != "" && self.client()!.isStarted() {
            weak var call = client()!.call().callUserVideo(withId: destination.text)
            performSegue(withIdentifier: "callView", sender: call)
        }
    }

    func client(_ client: SINCallClient?, didReceiveIncomingCall call: SINCall?) {
        performSegue(withIdentifier: "callView", sender: call)
    }
}

Неустранимая ошибка: неожиданно обнаружен ноль при развертывании необязательного значения

...