0

У меня есть UINavigationBar, который виден. Когда я перемещаю этот элемент за кадром, область под ней больше не принимает касаний.При перемещении область под UINavigationBar уже нечувствительна

Любая идея, почему это происходит и как я могу это исправить?

+0

Как именно вы скрываете UINavigationBar? Вы должны использовать метод setNavigationBarHidden в своем экземпляре. – mmccomb

+0

Я действительно не хочу скрывать UINavigationBar. поэтому я делаю так: r = self.parentController.navigationController.navigationBar.frame; r = CGRectMake (0, - offsetY, r.size.width, r.size.height); self.parentController.navigationController.navigationBar.frame = r; , потому что я хочу, чтобы скрытая панель навигации при прокрутке вверх и показывалась панель навигации при прокрутке вниз. Спасибо ! – yijiankaka

ответ

0

При перемещении navigationBar, установив обычай frame к нему, вы измените frame в contentView в UINavigationController?

Если нет, то деталь под номером navigationBar может быть виден, но не внутри содержимого navigationController, так что касания на нем не будут обнаружены.

+0

, конечно, я также изменяю рамки contentView UINavigationController, но он также не работает ожидаемо. Я нашел это в UINavigationBar. Ссылка на класс: настройка внешнего вида панели навигации. До iOS версии 5.0 при использовании в сочетании с контроллер навигации, есть только несколько прямых настроек, которые вы можете сделать на панели навигации. В частности, это нормально, чтобы изменить свойства barStyle, tintColor и полупрозрачные, но вы никогда не должны напрямую изменять свойства уровня UIView, такие как рамки, границы, альфа или скрытые свойства. найти причину? – yijiankaka

+0

Ну, это не рекомендуется Apple, так как им не нравится, когда вы пытаетесь настроить вещи ^^ Но это все равно должно работать ... Странно ... – Zoleas

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