У меня есть UIBarButton saveBarButton
, чтобы сохранить изображение экрана в рулоне камеры. Когда пользователь нажимает saveBarButton
, изображение сохраняется, а UIBarButton saveBarButton
изменяется на UIImage doneIcon
на 1,2 секунды, чтобы указать пользователю, что изображение сохранено. Когда saveBarButton
отображает doneIcon
I, отключите saveBarButton
. Однако, когда я это делаю, saveBarButton
неактивен.Как сделать UIBarButton недоступным при отключении?
Мой вопрос: как мне остановить UIBarButton
от высева при отключении?
Мой код:
//create UIBarButton saveBarButton
override func viewDidLoad() {
let saveBarButton = UIBarButtonItem(image: UIImage(named: "saveIcon"), style: .Plain, target: self, action: "save:")
saveBarButton.tintColor = colorGreyDark
}
//save function called when press saveBarButton
func save(sender: UIBarButtonItem) {
//save image
deselectShape()
let window: UIWindow! = UIApplication.sharedApplication().keyWindow
let windowImage = capture(window)
UIImageWriteToSavedPhotosAlbum(windowImage
, nil, nil, nil)
//Change saveBarButton to indicate to user that image was saved
sender.image = UIImage(named: "doneIcon")
sender.enabled = false //disable saveBarButton
self.performSelector("canSaveAgain:", withObject: sender, afterDelay: 1.2)
}
//Change saveBarButton to original icon to indicate to user that can save another image
func canSaveAgain(sender: UIBarButtonItem){
sender.image = UIImage(named: "saveIcon")
sender.enabled = true //enable saveBarButton
}
To see what I'm talking about.
Вы пробовали 'sender.tintColor = UIColor (красный: 51/255, зеленый: 51/255, синий: 51/255, альфа: 1,0)', где вы установите кнопку Enabled = ложь? –