Скрыть и показать кнопку возврата в панели навигации
У меня есть эти два метода:
func showSpinner()
{
let spinner = UIActivityIndicatorView(activityIndicatorStyle: .White)
spinner.startAnimating()
self.navigationItem.leftBarButtonItem = UIBarButtonItem(customView: spinner)
self.navigationItem.hidesBackButton = true
}
func hideSpinner()
{
self.navigationItem.leftBarButtonItem = nil
self.navigationItem.hidesBackButton = false
}
В viewDidLoad
Я звоню showSpinner
а потом после загрузки данных я звоню hideSpinner
, Но спина кнопки часто прыгает hideSpinner
, Как это исправить?
1 ответ
Решение
Вы можете использовать задержку, чтобы показать кнопку "Назад" после снятия счетчика. Как 0,2 секунды или согласно требованию
func hideSpinner()
{
self.navigationItem.leftBarButtonItem = nil
dispatch_after(1, dispatch_get_main_queue()) { () -> Void in
self.navigationItem.hidesBackButton = false
};
}