Приложение погоды iOS может прокручивать «подчиненные» ячейки таблицы независимо от «основных» ячеек таблицы - как это сделать? - PullRequest
0 голосов
/ 14 марта 2012

Приложение iOS для погоды отображает прогноз на каждый день недели в виде таблицы.Если вы нажмете на ячейку таблицы, она развернется и отобразит «вспомогательную» ячейку, содержащую подробный прогноз на этот день.

Как это сделать, было задано здесь: Возможно добавить строки в UITableView, например, iOS5 Weatherapp? (Есть ли другие вопросы о переполнении стека, которые дают лучший ответ?)

Если вы прокручиваете «расширенную» таблицу, подэлементы прокручиваются независимо, пока не осталось подэлементов,затем вся таблица прокручивается еще раз.

Вопрос: Как это сделать?

1 Ответ

3 голосов
/ 14 марта 2012

На самом деле, я думаю, это совсем не табличное представление. У вас есть WeatherCard в качестве parentView, скажем, MainView . Вверху находится текущая погода и первый ряд «таблицы» в виде статических представлений. Все остальные строки являются дочерними элементами другого представления (скажем, DraggingView ), которое имеет UIPanGestureRecognizer. При этом вы управляете перетаскиванием DraggingView .

Под DraggingView находится подробный TableView (скажем, DetailView ). Вероятно, это настоящий tableView, просто из-за функциональности sticking-header. Но вы также можете легко сделать это с помощью стандартного прокрутки.

Таким образом, если вы перетащите DraggingView прочь, DetailView станет видимым. Если его снова прокрутить со смещением 0, DraggingView снова станет слоем сверху.

Получившаяся структура будет:

MainView
* DetailView
* DraggingView

И вам, вероятно, понадобится дополнительный вид, который маскирует DetailView и DraggingView . Вы включаете это, используя .clipsToBounds свойство UIView.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...