2016-02-04 2 views
1

При реализации iPad-многозадачности в приложении для iOS появился старый Bug.Что вызывает ghosting UIBarButtonItems в UIToolbar?

UIToolbar with ghosting buttons

То, что вы видите, это UIToolbar создается и управляется UINavigationController с пунктами кнопки с фронта большинство viewcontrollers toolbarItems. Приложение работает в симуляторе на iPad Air 2 в режиме многозадачности 50/50. Ошибка происходит, когда приложение входит в фоновый режим при многозадачности (домашняя кнопка), а затем снова переходит на передний план (нажмите значок трамплина).

Я видел этот эффект раньше, обычно связан с вращением устройства. «Обходной путь» обычно выполнял весь код смены панели инструментов в таких местах, как viewWillAppear:, в блоке в главной очереди.

Похоже, что еще один UIToolbar рисуется снизу с некоторым смещением к положениям кнопок, вызывающим эффект параллакса. Базовый UINavigationController и UISplitViewController, кажется, правильно быть установлено, когда осмотрены в отладчике (стек ViewController имеет смысл и т.д. стр.)

Поскольку эта ошибка ухудшилась, прежде чем в моем приложении, я бы очень хотел, чтобы понять, что происходит здесь, чтобы исправить это.

ответ

1

Я наконец нашел его.

При изменении интерфейса пользователя, реагирующего на изменения коллекции признаков, я переместил UIBarButtonsItems из navigationItem в «toolbarItems».

Был один путь кода, где я не удалял кнопки с панели инструментов, прежде чем добавлять их в навигационную панель. Это приведет к дублированию кнопок на панели инструментов. Дубликаты были UINavigationButton объектов, которые, кажется, являются внутренним представлением кнопок в UINavigationBar и которые действительно не принадлежат UIToolbar.

Смежные вопросы