В поисках лучшего способа скрыть панель поиска в верхней части экрана - PullRequest
4 голосов
/ 05 июля 2011

У меня есть несколько представлений, где я хочу, чтобы панель поиска была скрыта, если пользователь не прокручивает ее, чтобы использовать. Я использую эту команду для достижения этого:

[self.tableView setContentOffset:CGPointMake(0, 44) animated:NO];

Это работает нормально, но не идеально; всякий раз, когда происходит что-то, что приводит к перезагрузке табличного представления, его необходимо переместить снова.

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

Есть ли подход, который я пропускаю?

Заранее спасибо!

Обновление: я никогда не понимал этого, поэтому в конечном итоге я изменил свой дизайн.

1 Ответ

1 голос
/ 05 августа 2011

Хотя, возможно, уже немного поздно, когда вы говорите: «каждый раз, когда происходит что-то, вызывающее перезагрузку табличного представления, его необходимо заново перемещать», вы говорите, что каждый раз, когда ваша UITableView перезагружается, она прокручивается до ее вершины ? Это не стандартное поведение UITableView.

Что касается второй части вашего вопроса, касающейся вашей области действия UISearchBar, я настоятельно рекомендую заменить UISearchBar на вашу собственную UISegmentedControl (в любом случае это все область действия UISearchBar) , так что пользователь не смущен наличием вне экрана UISearchBar, который ничего не делает.

...