UITableView не отвечает на прокрутку при первой загрузке - PullRequest
4 голосов
/ 19 сентября 2009

Я обнаружил, что при первой загрузке UITableView он не реагирует на прикосновения прокрутки - если в нем не больше строк, чем умещается на экране. Если я закрою представление, то снова открою тот же объект - теперь он будет реагировать на прикосновения - даже если он содержит одинаковое количество строк.

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

Кто-нибудь может объяснить такое поведение?


Я создаю клетки так:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
  static NSString *tableId = @"NewIndexTableId";
  Note *note = [notes objectAtIndex:[indexPath row]];

  UITableViewCell *cell = [self.tableView dequeueReusableCellWithIdentifier:tableId];

  if (cell == nil)
    cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:tableId] autorelease];

  cell.textLabel.text = note.text;
  cell.detailTextLabel.text = [note changedDelta]; 
  cell.accessoryView = multipleAccounts ? [note.account imageView] : nil;

  return cell;  
}

Ответы [ 3 ]

17 голосов
/ 13 августа 2010

У меня была такая же проблема. Bounce Scroll был включен в IB, но все равно нет любви. Я должен был установить его в коде (в viewDidLoad), как это ...

self.myTableView.bounces = YES;

Надеюсь, это поможет; -)

0 голосов
/ 28 сентября 2009

Я решил эту проблему, убедившись, что в таблице всегда есть по крайней мере 10 строк - создавая фиктивные строки, когда меньше 10 реальных строк. Это решило глюк.

0 голосов
/ 25 сентября 2009

Как выглядит ваш xib-файл? Есть ли у вас какие-либо представления, кроме UITableView?

Раньше, когда я изучал программирование на iPhone, я каким-то образом получил два UITableView в моем xib-файле - таблица отображалась правильно, но с небольшими проблемами.

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