Swift скрывает кнопку «Назад»

Я хочу скрыть кнопку «Назад» и установить заголовок.

Я использую следующий код:

    override func viewDidLoad() {
    super.viewDidLoad()

    navigationItem.title = "Einstellungen"
    navigationItem.hidesBackButton = true }

Но заголовок не отображается, а кнопка «Назад» все еще там, но если я ее коснусь, ничего не произойдет. Кто-нибудь может мне помочь?


person Philipp Rosengart    schedule 17.12.2016    source источник


Ответы (2)


Я нашел решение самостоятельно.

Если я устанавливаю заголовок и hidesBackButton из моего предыдущего ViewController, все работает нормально.

    override func prepare(for segue: UIStoryboardSegue, sender: Any?) {

    if let destinationVC = segue.destination as? ViewControllerFirstSettings {

        destinationVC.navigationItem.hidesBackButton = true
        destinationVC.navigationItem.title = "Einstellungen"
    }
}
person Philipp Rosengart    schedule 17.12.2016

Этот код может помочь:

 // MARK: - CUSTOM METHODS
        func createNavBar() {

            let leftNavigationButton =  UIButton()
            leftNavigationButton.setImage(UIImage(named: "ic_back.png"), forState: .Normal)
            leftNavigationButton.frame = CGRectMake(10, 10, 20, 15)
            leftNavigationButton.addTarget(self, action: "onBackButtonPressed:", forControlEvents: UIControlEvents.TouchUpInside)
            let customBarItem = UIBarButtonItem(customView: leftNavigationButton)
            self.navigationItem.leftBarButtonItem = customBarItem;

            //set TitleAppIcon
            let GR = UITapGestureRecognizer(target: self, action: Selector("headerLogoTapAction:"))
            let imageView = UIImageView(frame: CGRect(x: 90, y: 0, width: ((UIScreen.mainScreen().bounds.width)/3), height: 40))
            imageView.addGestureRecognizer(GR)
            imageView.userInteractionEnabled = true
            navigationItem.titleView = imageView
        }
person Shobhakar Tiwari    schedule 17.12.2016