1
我在這裏看到了與此相關的其他問題,但我已經找到了解決方案,而且當我滾動時,事情仍然在移動。UITableView在滾動時移動單元格內容
基本上,我有一個數據表,我想第一個和唯一的第一行有一個UITableViewCellAccessoryDisclosureIndicator。問題是,當我滾動時,指示器會重複,刪除並移動到其他單元格。這裏是我的代碼..
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = (UITableViewCell *) [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if(cell == nil){
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
if(indexPath.row == 0) {
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
}
cell.textLabel.text = [tabledata objectAtIndex:indexPath.row];
return cell;
}
的問題是一些與indexPath.row變量..它在不屬於最早的其他細胞能夠返回0(當它涉及到展示細胞)。無論其...數據永遠是正確的,從我的數組(這意味着該值是正確的),並在我的
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
方法,我只是想改變屏幕的行0被點擊時..而不管在那裏我滾動到,沒有細胞觸發,除了第一個。所以看起來這種檢查總是正確的,而cellForRowAtIndexPath中的一個不是......
哦哇..我會假設,當你重新使用細胞時,所有的信息被卡住。它實際上保留了那個? *編輯*這是問題。謝啦。我永遠不會想到發生的事情。 –
當我第一次開始使用UITableview時,它讓我感到困惑。我猜想tableview沒有辦法知道單元格應該如何看待它們的「原始」狀態,所以它們只是給你任何緩存並讓你處理它! –