Ниже приводится фрагмент кода, который не работает:нужно добавить общий UIBarButtonItem во всех VCs
class Person {
static fun addBtn(cName:UIViewController)
{
let rightBtn = UIBarButtonItem.init(title: "Right", style: .Plain, target: UIBarButtonItem.self, action:#selector(UIBarButtonItem.self.newMenuTapped(_:)))
cName.navigationItem.rightBarButtonItem = rightBtn
}
}
extension UIBarButtonItem
{
func newMenuTapped(sender: UIBarButtonItem)
{
print("Tapped")
}
}
Аварии с этой ошибкой:
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: unrecognized selector sent to class 0x14c830
Может кто-то руководство быть, как к тому, что я делаю неправильно? Благодарю.
использовать эту функцию в вашем BaseViewController и будет работать для всех ViewController –
@Meet шаха да сделать это как Dev сказал. –
Хотя этот фрагмент кода может решить вопрос, в том числе объяснение действительно помогает улучшить качество вашего сообщения. Помните, что вы отвечаете на вопрос читателей в будущем, и эти люди могут не знать причин вашего предложения кода. Также попробуйте не толковать код с пояснительными комментариями, так как это уменьшает читаемость кода и объяснений! – reporter