Прокрутите заголовок UITableView? - PullRequest
2 голосов
/ 21 января 2012

У меня есть собственный заголовок UITableView, который я хочу прокручивать над верхней частью таблицы.Обычно заголовок прилипает к вершине таблицы, разве нельзя каким-то образом изменить способность прокрутки, чтобы он мог пойти дальше и прокручивать ячейки в таблице?

Спасибо.

Ответы [ 7 ]

4 голосов
/ 11 июня 2013
myTableView.tableViewHeader = myCustomTableHeaderView;

Это установит myCustomTableHeaderView в качестве заголовка вашего табличного представления и будет прокручиваться вместе с табличным представлением.

4 голосов
/ 21 января 2012

Хорошо, если это желаемое поведение, которое вы хотите, просто поместите header в качестве содержимого первой ячейки.Можно настроить любую конкретную ячейку, которую вы хотите.UITableViewDelegate Документация поможет вам в этом вопросе.PS: весь смысл использования заголовка tableView заключается в том, чтобы он прилипал к верхней части окна.

РЕДАКТИРОВАТЬ: Если необходимо, чтобы вы работали так, как вы хотите, тогда вы можете попробовать это: переместите ваш tableView немного вниз, установив его contentOffset.например: myTableView.contentOffset= CGPointMake(0,heightOfYourView).Теперь добавьте yourView вверху

1 голос
/ 22 января 2012

Реализуя tableView:viewForHeaderInSection: для секции индекса 0, вы можете вместо этого иметь заголовок в качестве первой секции, которая должна исчезнуть при прокрутке. Таким образом, это не заголовок для всего UITableView.

0 голосов
/ 17 января 2014
- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
    CGFloat sectionHeaderHeight = 40;//Change as per your table header hight
    if (scrollView.contentOffset.y<=sectionHeaderHeight&&scrollView.contentOffset.y>=0) {
        scrollView.contentInset = UIEdgeInsetsMake(-scrollView.contentOffset.y, 0, 0, 0);
    } else if (scrollView.contentOffset.y>=sectionHeaderHeight) {
        scrollView.contentInset = UIEdgeInsetsMake(-sectionHeaderHeight, 0, 0, 0);
    }
}
0 голосов
/ 04 октября 2013

Вы должны использовать стиль Grouped TableView и в своем методе ViewDidLoad добавить следующую строку кода:

myTableView.backgroundColor=[UIColor clearColor];
myTableView.opaque=NO;
myTableView.backgroundView=nil;

Также в файле пера вы должны очистить цвет фона сгруппированной таблицы;

0 голосов
/ 05 апреля 2012

Возможно, вы, как и я, искали свойство tableHeaderView.См. этот SO вопрос для получения дополнительной информации.

0 голосов
/ 22 января 2012

Если у вас есть только один заголовок для всей таблицы, вы не можете просто установить свойство tableHeaderView?

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