У меня есть куча UIBarButtonItem
с в UIToolbar
. Каждый из них имеет свой SystemItem
установленный в раскадровке, так что они будут выглядеть как системные иконки.
Я бы предпочел не делать IBAction
для каждого из них, поэтому мне нужен какой-то способ дифференцировать их в операторе switch. Я предполагаю, что лучший способ сделать это - посмотреть на их SystemItem
, так как это единственное свойство, которое делает их уникальными друг от друга.
Вот что у меня так далеко:
@IBAction func buttonPressed(_ sender: UIBarButtonItem) {
let controller = UIImagePickerController()
controller.delegate = self
switch sender.[WHAT DO I PUT HERE?] {
case .compose:
controller.sourceType = .photoLibrary
case .camera:
controller.sourceType = .camera
default:
break
}
present(controller, animated: true)
}
Если есть лучший способ провести различие между UIBarButtonItem
с, я весь слух.