Как я могу получить противоположное значение Bool в Swift?
11642 просмотра
3 ответа
Мой конкретный случай - я пытаюсь переключить навигационную панель, скрытую и показывающую.
let navHidden = !self.navigationController?.navigationBarHidden
self.navigationController?.setNavigationBarHidden(navHidden!, animated: true)
Не работает для меня, как обычно, в Obj-C.
Автор: SirRupertIII Источник Размещён: 12.11.2019 09:14Ответы (3)
15 плюса
Восклицательный знак находится на неправильной стороне логического. То, как вы это написали, будет означать, что логическое значение может быть нулевым. Вы хотите! NavHidden.
Автор: Ideasthete Размещён: 14.09.2014 02:493 плюса
navHidden!
чтобы убедиться, что это не является обязательным. !navHidden
это правильный способ сделать это.
Из книги Apple .
Автор: fantasticfears Размещён: 14.09.2014 02:55Пытаюсь использовать! доступ к несуществующему необязательному значению вызывает ошибку времени выполнения. Всегда убедитесь, что необязательный параметр содержит ненулевое значение перед использованием! принудительно развернуть его значение.
1 плюс
navHidden является необязательным. И вы явно разверните этот необязательный (что означает, что вы получите сбой, если navHidden равен нулю). Очевидно, что-то здесь не так. Я предлагаю
if let navController = self.navigationController {
let navHidden = navController.navigationBarHidden
navController.setNavigationBarHidden (!navHidden, animated:true)
}
Автор: gnasher729
Размещён: 26.10.2015 09:15
Вопросы из категории :
- ios Приложение для iPhone в ландшафтном режиме, системы 2008
- ios Как мне дать моим веб-сайтам значок для iPhone?
- ios Как программно отправить смс на айфон?
- ios Как я могу разработать для iPhone, используя машину для разработки Windows?
- ios Tips for a successful AppStore submission?
- ios Как мне определить размер UITextView для его содержимого?
- swift Как я могу программным образом определить, работает ли мое приложение в симуляторе iphone?
- swift iOS: Convert UTC NSDate to local Timezone
- swift Как установить цель и действие для UIBarButtonItem во время выполнения
- swift Жирный и не жирный текст в одном UILabel?
- swift Найти касательную точки на кубической кривой безье
- swift Как я могу рассчитать разницу между двумя датами?
- boolean Использование сравнений OR с операторами IF
- boolean Самый простой способ переключить логическую переменную в Java?
- boolean Двойное отрицание в коде C ++
- boolean Булевы выражения в Java
- boolean Как использовать логические переменные в Perl?
- boolean Кто-нибудь использует именованные логические операторы?