Проблема с UINavigationBarItem в swift

#swift #uinavigationbar

#swift #uinavigationbar

Вопрос:

Я новичок в Swift, и у меня проблема с элементом правой панели навигации. Я сделал правильный элемент панели программно, но проблема в том, что я выполнил простой код для отображения правильного элемента панели в контроллере представления, но он вообще не отображается. Я не знаю, в чем проблема?? должен ли я что-то добавить в раскадровку?

Это код:

  override func viewDidLoad()
{

         super.viewDidLoad()
        self.navigationItem.rightBarButtonItem = UIBarButtonItem(title: "startOver", style: .plain, target: self, action: #selector(startOver))
        self.navigationItem.title = "NavigationBar"
     }

    @objc func startOver() {
        /* if let navigationController = navigationController {
             navigationController.popToRootViewController(animated: true)
         }*/
        print("start over")
     }
 

Комментарии:

1. Вы убедились, что ваш контроллер представления действительно находится внутри a UINavigationController ?

2. да, используя корневой контроллер представления segue для моего ViewController

3. Реализовать viewDidAppear для print(self.navigationController) . Что он печатает?

Ответ №1:

введите описание изображения здесьУ меня это работает нормально, вы можете очистить код, а затем повторить попытку, или вам нужно убедиться, что вы встроили свой ViewController в NavigationController

Комментарии:

1. спасибо, я решил проблему, и это было место точки входа в раскадровку, я не знал, что мне нужно перейти с ViewController на NavigationController!!