Я работаю над универсальным приложением, используя раскадровки, и я добавил UISearchBar
и UISearchDisplayController
в одно из моих табличных представлений. Я подключил все это, и вы можете искать в порядке. Проблема заключается в том, что я нажимаю новый контроллер представления в стек навигации. На iPhone это прекрасно, но на iPad это приводит к тому, что сдвинутый контроллер просмотра смещается под панель навигации (мне пришлось вручную сделать навигационную панель снова, чтобы вы могли вернуться).UISearchBar на iPad вид таблицы исчезает под панелью управления навигационной панелью
Затем, когда вы перейдете к исходному представлению таблицы, в котором выполнялся поиск, поиск по-прежнему активен, но UISearchBar
теперь скрыт за панелью навигации, что означает, что нет возможности отклонить его, не удаляя запрос. Это также означает, что он больше не используется, поскольку вы не можете вернуться к нему.
Наверное, лучше всего проиллюстрировано с помощью некоторых скриншотов.
Вот как это выглядит, когда вы впервые открываете TableView:
Затем делает поиск в порядке:
Щелчок через к следующему экрану, мы можем см. вопрос:
И затем обратно на исходный экран, по-прежнему делает поиск, но не в окне поиска:
Тогда, если удалить все из окна поиска, и избавиться от наложения, я могу видеть в окне поиска, когда я просматриваю таблицу вверх, но не могу ее достичь. Однако я не могу получить надежный захват экрана.
Я искал везде решение, но не смог его найти. Я пробовал звонить [self setNeedsDisplay]
и [self setNeedsLayout]
в методе viewDidAppear
, но это, кажется, не имеет никакого эффекта. Кажется, он исправляет себя, если я изменяю ориентацию устройства, и я пытался воспроизвести то, что он сделал бы в этой ситуации, вызвав эти методы.
Структура IPad раскадровка: SplitViewController
-> Навигационный контроллер ->UITabBarController
->UITableViewController
(содержит UISearchBar
etc.f) ->UITableViewController
я подобная проблема, фиксируется изменение навигационной панели от полупрозрачного до непрозрачного, и это внезапно Я начал работать - это может быть ios 7. –
Привет Роб. У меня такая же проблема, но я не понимаю, что вы здесь говорите. Как это исправить? – Lucas