錯誤: - 使用未聲明的標識符單元格。無法在一個視圖控制器中加載兩個表視圖
無法在一個視圖控制器中加載兩個自定義單元格。
-(UITableViewCell*)tableView:(UITableView*)tableView cellForRowAtIndexPath:(NSIndexPath*)indexPath
{
if (tableView == tableView_grantRecordAccess)
{
UITableViewCell *cell = [tableView_grantRecordAccess dequeueReusableCellWithIdentifier:@"EHSRecordAccessGrantCell"];
if (cell == nil) {
// Load the top-level objects from the custom cell XIB.
NSArray *topLevelObjects = [[NSBundle mainBundle] loadNibNamed:@"EHSRecordAccessGrantCell" owner:self options:nil];
// Grab a pointer to the first object (presumably the custom cell, as that's all the XIB should contain).
cell = [topLevelObjects objectAtIndex:0];
}
return cell;
}
else if (tableView == tableView_accessRecordRequest) {
UITableViewCell *cell = [tableView_accessRecordRequest dequeueReusableCellWithIdentifier:@"EHSAccessRecordCell"];
if (cell == nil) {
// Load the top-level objects from the custom cell XIB.
NSArray *topLevelObjects = [[NSBundle mainBundle] loadNibNamed:@"EHSAccessRecordCell" owner:self options:nil];
// Grab a pointer to the first object (presumably the custom cell, as that's all the XIB should contain).
cell = [topLevelObjects objectAtIndex:0];
}
}
return cell;
}
檢查XIB中的單元格標識符。 –
其他條件,如果我們得到錯誤使用未聲明的標識符單元格 –
當您返回單元格時,在else else條件中,右括號錯位(「}」),因此未定義。正確縮進您的代碼,您會看到。它應該在'return cell;'之後而不是之前。 – Larme