столкнулся со странной проблемой с пользовательским интерфейсом. Пожалуйста, найдите ниже детали.
- Я создал пример демонстрационного проекта, чтобы продемонстрировать проблему. Требование довольно простое (также прилагаются скриншоты). Приложение начинается с ViewController, который является UINavigationController, поэтому он показывает NavigationBar.
- В UINavigationBar добавлен UISegmentController из 2 элементов.
- Есть 2 дочерних TableViewController, которые будут отображаться для каждого выбора сегмента.
- Каждый ViewController добавляется с помощью NSLayoutConstraints. И каждый раз более старый дочерний VC будет удаляться, а новый будет добавляться вместо того, чтобы скрывать и показывать. Хотя мы не создаем объект VC каждый раз. Он имеет сильную ссылку
- Дочерние VC добавляются в представление RootVC вместо ContainerView. Пробовал также ContainerView, но результат тот же.
Теперь проблема в том, что второй дочерний VC всегда находится под панелью навигации (см. прикрепленный снимок экрана). Но с первым все в порядке, так как он находится под панелью навигации. если я установлю для полупрозрачного свойства NavigationBar значение «НЕТ», оба будут работать нормально, как и ожидалось. Но с полупрозрачным свойством NavigationBar как «ДА» правильно будет уложен только первый, а не второй. Неважно, какой ChildViewController (firstVC или secondVC), это происходит для дочернего VC, добавленного после первого. Любые идеи по этой странной проблеме? Я создал демонстрационный проект, если хотите проверить что там происходит..
Заранее спасибо..