2017-05-05 1 views
0

Wann ist es möglich, dass diese Methode UIViewControllerContextTransitioning Null zurückgibt?Warum gibt UIViewControllerContextTransitioning Optionale zurück?

viewController(forKey key: UITransitionContextViewControllerKey) -> UIViewController?` method of `UIViewControllerContextTransitioning 

Wenn es möglich ist, wie sollten Sie damit umgehen? Können Sie den Systemübergang als Standard verwenden, wenn Sie einen an der Animation beteiligten View-Controller nicht abrufen können? Ich habe angenommen, dass die Kraft, die diese Werte auspackt, sicher ist.

+0

Ich zwinge immer, sie auszupacken. – matt

+0

Ich werde nie wieder von dieser Methode in Obj-C oder Swift befreit werden. Ich nehme an, dass es theoretisch möglich ist, dass der von/nach VC mitten in einem Übergang aus irgendeinem schrecklichen Grund ausgelassen werden könnte. Und es sieht von hier aus so aus, dass es einen Fehler gab, der das verursacht hat. http://StackOverflow.com/Questions/24338700/from-view-controller-disappears-using-uiviewcontrollerContextTransitioning Aber ich denke, dass, selbst wenn es definitiv nicht möglich war, diese API pro ist nicht pure Swift, so dass es eine zurückgeben muss optional –

Antwort

0

Wenn Sie die Dokumentation auf diesen Anruf lesen, sagen sie:

Rückgabewert

Der View-Controller-Objekt für den angegebenen Schlüssel oder null, wenn die Ansicht Controller konnte nicht gefunden werden.

Wenn also kein View-Controller-Objekt für den angegebenen Schlüssel vorhanden ist, erhalten Sie null.

+0

Aber die Frage ist: In der Praxis passiert das jemals? Und wenn ja, wie könnte es? – matt

Verwandte Themen