В преобразовании из Swift 2.3 до 3 Swift, получаю ошибку выше для следующей строки кода:Ноль не совместим с ожидаемым типом аргумента Selector
var contactButton: UIBarButtonItem {return self.CustomRightItem("icon-nav-nls-contact", target: self, action: nil)}
Проблема заключается в nil
действия. Я пробовал использовать и пустую селектор: #selector()
и `` `#selector (nil) как безрезультатно.
Как я могу обработать действие nil в Swift 3?
CustomRightItem выглядит как ваш собственный метод экземпляра, который создает UIBarButtonItem. Возможно, вам нужно переписать свою функцию, чтобы вместо «селектора» выбрать «Селектор?» (Необязательный селектор)? Или, как вы показываете в своем собственном ответе, переходите к фактическому селектору. –
Похоже, что инициализаторы Swift для UIBarButtonItem используют необязательный селектор, поэтому необходимо изменить вашу функцию для выбора «Selector?». –