3
我很確定我在這裏做的是正確的,但我只是想檢查[cell autorelease]
是不是太快釋放我的單元格,並且dequeueReusableCellWithIdentifier
排隊等待重用的單元格。我的理解是,隊列是一個單獨的實體,就像存儲單元格藍圖一樣(有點像筆尖),而不是實際的對象?UITableViewCell,出隊和autorelease?
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"LOC_ID"];
if(cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"LOC_ID"];
[cell autorelease];
}
NSUInteger row = [indexPath row];
//id thisLocation = [locationList objectAtIndex:row];
[[cell textLabel] setText:[NSString stringWithFormat:@"R_%u", row]];
return cell;
}
編輯:爲了澄清,我感興趣的是關於生命週期和細胞會發生什麼。我知道我分配他們,然後autorelease他們,然後表格從cellForRowAtIndexPath返回後獲取單元格的所有權?所以他們十個屬於UITableView,或者我感到困惑?