2014-09-08 4 views
1

Я использую UITableViewController, чтобы использовать статические ячейки.UITableView, необходимо заморозить первую ячейку

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

Я думал о правильном UIViewController с некоторыми вещами сверху и UITableView, но это не сработает, потому что мне нужно UITableViewController для того, чтобы статические ячейки работали.

Единственный способ заставить его работать с UIView s и прокруткой, но тогда я не получаю пользу от UITableView.

Возможно ли это?

EDIT:

Просто, чтобы прояснить ситуацию. Мне нравится использовать UITableView со статическими ячейками, потому что у меня есть выходы и действия. Кнопки, поля внутри ячеек. Я хотел бы ограничить «кодирование» только для отображения/скрытия ячеек. Я не хочу создавать пользовательский интерфейс внутри кода. Я хочу сделать столько, сколько смогу использовать Storyboard.

Не знаете, как установить вид на заголовок раздела с помощью раскадровки. Это вообще возможно? Я могу установить только текст.

Также! Несмотря на то, что у меня есть заголовок (с тестом), он по-прежнему прокручивается с остальными ячейками. Мне нужно убедиться, что он остается на экране.

+1

Лучший способ сделать это будет иметь первый ряд на самом деле быть разделом вместо строки. – Fogmeister

+1

Согласовано. Однако, если вы ищете представление заголовка для себя как UITableViewCell, вам нужно будет настроить еще одну ячейку UITableView с этой первой, не поддающейся проверке ячейкой. Это означает, что вам нужно будет учитывать два существующих представления таблиц во всех ваших методах UITableViewDelegate/UITableViewDataSource. – Giz

+1

Если по какой-то причине использование заголовка раздела не работает для вас, есть несколько других способов сделать это. Можно было бы использовать UIViewController и табличное представление с динамическими ячейками - вам нечего делать со статическими ячейками, которые вы также не можете делать с динамическими. Другим способом было бы использовать контроллер UIView с верхним видом, а под ним будет контейнер, в котором будет находиться UITableViewController с вашими статическими ячейками. – rdelmar

ответ

1

Вы можете использовать этот метод делегата и передать свой собственный вид вместе с вашим контролем юга он получит палку в верхней части:

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section 
{ 
    return <your custom view>; 
} 
Смежные вопросы