Странный эллипсис, появляющийся в UINavigationBar

Я реализовал элемент навигации с левой кнопкой, названием заголовка и правой кнопкой. Кнопка "Назад" установлена ​​на "скрывается".

На некоторых левых переходах появляется синее эллипсис.

enter image description here

Любые идеи относительно того, что это такое и как избавиться от него?

Ответы

Ответ 1

Я исправил это, не вызывая:

self.navigationItem.hidesBackButton = YES;

Установив пользовательский элемент кнопки на левой панели, но не вызывая этот метод/не устанавливая его в НЕТ, эллипсис не появляется. Я предполагаю, что это ошибка Apple.

Ответ 2

Если контроллер родительского контроля стека контроллера навигации имеет элемент навигации с пользовательским titleView, вы должны установить заголовок на @"", чтобы он отображался правильно во время первого всплытия.

Ответ 3

Я убрал его, установив цвет оттенка прозрачным:

self.navigationBar.tintColor = [UIColor clearColor];

Ответ 4

В моем случае мне нужно было использовать hidesBackButton, поэтому решение livings124 не работало для меня. Вместо этого вызов

self.navigationController.navigationBar.backItem.title = @"";

в viewWillAppear: сделал трюк.

Ответ 5

может быть вашим текущим заголовком viewcontroller слишком долго. Вы можете настроить заголовок viewcontroller в viewdidappear method.work для меня. также, пожалуйста, проверьте, есть ли у вас атрибут или нет атрибута "self.navigationController.navigationBar.titleTextAttributes", если у вас есть, прокомментируйте его. Затем повторите попытку.

Ответ 6

iOS 9, XCode 7.3.1:

В моем случае (UIBarButtonItem с пользовательским представлением) я исправил это, вызвав sizeToFit() на пользовательском представлении в viewDidLoad.

TL;DR

Я добавляю UIBarButtonItem в IB для segue и как визуальный сигнал... но в коде я заменил его на UIBarButtonItem(customView: myCustomButton).

Спекуляция: Поскольку UIBarButtonItems не являются представлениями, мой customView загружался в NavigationBar (но) без IB там, чтобы дать ему размеры, поэтому он имел значение по умолчанию для UIView - CGRect.zero.