У меня есть контроллер просмотра, который позволяет ne создавать сообщения. При отправке на сервер пользователь может закрыть представление вниз. Теперь в закрытии огня alamo у меня есть функции изменения пользовательского интерфейса в зависимости от состояния. Если пользователь уже закрыл представление, он создает сбой. Как я могу справиться с этим?swift3 iOS как обрабатывать возможный вид nil в закрытии
-1
A
ответ
2
Вы можете передать представление как слабый параметр, а затем изменить пользовательский интерфейс только в том случае, если он по-прежнему имеет значение. Простого пример:
doSomething() { [weak self] in
self?.updateText()
}
1
С сайтом разработчика Apple. https://developer.apple.com/library/content/documentation/Swift/Conceptual/Swift_Programming_Language/AutomaticReferenceCounting.html
Conversely, define a capture as a weak reference when the captured reference may become nil at some point in the future.
Пример:
func updateMyView(){ [weak self] in
self?.updateView()
}
Пожалуйста, покажите соответствующий код. –