我发现第一次加载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;
}
答案 0 :(得分:17)
我有同样的问题。 Bounce Scroll已在IB中启用,但仍然没有爱。 我不得不在代码中设置它(在viewDidLoad中),就像这样......
self.myTableView.bounces = YES;
希望这会有所帮助; - )
答案 1 :(得分:0)
你的xib文件是什么样的?你有除UITableView以外的任何观点吗?
在我学习iPhone编程的早期,我在xib文件中最终得到了两个UITableViews - 表格显示正确,但显示出微妙的问题。
答案 2 :(得分:-1)
我通过确保表中始终至少有10行来解决这个问题 - 当实际行少于10行时创建虚拟行。这解决了故障。