Прокрутка раздела в UITableView - PullRequest
2 голосов
/ 31 июля 2010

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

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

Что вы предлагаете?

Ответы [ 2 ]

2 голосов
/ 31 июля 2010

Вы не можете прокручивать каждый раздел отдельно.Однако, согласно вашему описанию, звучит так, будто ваш первый раздел на самом деле не является разделом и должен быть заголовком для второго раздела.Когда вы создаете заголовок для раздела, он всегда остается видимым.Для создания пользовательского раздела представления вам нужно реализовать viewForHeaderInSection и heightForHeaderInSection, определенные в протоколе UITableViewDelegate.

Вот пример

- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
{
      return 60;
}


- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
      UIView *myHeader = [[[UIView alloc] initWithFrame:CGRectMake(0,0,60,320)] autorelease];
      myHeader.backgroundColor = [UIColor redColor];
      UILabel *myLabel = [[[UILabel alloc] initWithFrame:CGRectMake(0,0,30,150)] autorelease];
      myLabel.text = @"Testing header view";
      [myHeader addSubView:myLabel];
      return myHeader;

}

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

1 голос
/ 31 июля 2010

Боюсь, что вы не можете сделать это с одним столом.Все разделы будут прокручены.Однако, если первый раздел всегда содержит одну строку, и вы хотите сохранить ее на месте, то почему вы должны держать ее в таблице?Вы можете переместить это из таблицы.

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