iOS:删除UINavigationBaranimation
我们的应用程序有一个UINavigationBar与它的图像。 当我们继续(推)到另一个屏幕,然后点击后退button导航栏上的图像似乎从左到右的animation重新出现。 这有点分散注意力。 你怎么能删除这个后退buttonanimation?
我们尝试改变了“animation”设置,但是这改变了推animation而不是后animation。
我们的导航条码:
let logoImage:UIImage = UIImage(named: "ABC")! viewController.navigationItem.titleView = UIImageView(image: logoImage)
大部分是由于这个答案https://stackoverflow.com/a/8602982/47281
创build一个自定义导航栏并覆盖popItem
:
class MyNavigationBar: UINavigationBar { override func popItem(animated: Bool) -> UINavigationItem? { return super.popItem(animated: false) } }
通过故事板inputMyNavigationBar
作为我们的导航控制器的导航栏类:
注意我没有重写NavigationController popViewControllerAnimated
在链接的答案。
你可以这样做:
override func viewDidLoad() { super.viewDidLoad() let logoImage: UIImage = UIImage(named: "ABC")! self.navigationItem.leftBarButtonItem = UIBarButtonItem(image: logoImage, style: .plain, target: self, action: #selector(backBtnPressed)) }
然后创build一个方法来处理button上的点击
func backBtnPressed(){ _ = self.navigationController?.popViewController(animated: false) }