' NSInternalInconsistencyException',原因:'无法在捆绑中加载NIB:...'有名字

时间:2014-06-19 08:41:00

标签: ios objective-c uitableview

我试图将自定义单元格添加到tableView

我首先创建了一个带有2个标签"名称"的xib文件。 &安培; "描述"我已将它与控制器" customCellAchievementController"

当我尝试创建tableView

时,似乎找不到笔尖

任何想法可能会失败的事情?

我已将xib的类重新定义为控制器,我已将标识符更改为我在代码中使用的标识符,我检查xib文件是否为在构建阶段/复制捆绑资源,一切似乎都很好,我真的不明白......

有我的代码

-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
return [achievement count];

}

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{

static NSString *customCellIdentifier = @"CustomCell";

CustomCellAchievementController *cell = (CustomCellAchievementController *)[tableView dequeueReusableCellWithIdentifier:customCellIdentifier];

if(cell==nil){

    NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"CustomCell" owner:self options:nil];
    cell = [nib objectAtIndex:0];
}

cell.name.text= [achievement objectAtIndex:indexPath.row];
cell.description.text = [description objectAtIndex:indexPath.row];

return cell;
}

2 个答案:

答案 0 :(得分:1)

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
static NSString *customCellIdentifier = @"CustomCell";
CustomCellAchievementController *cell=[tableView dequeueReusableCellWithIdentifier: customCellIdentifier];
if (cell==nil)
{
    NSArray *arr1=[[NSBundle mainBundle]loadNibNamed:@"CustomCellAchievementController" owner:nil options:nil ];
    for(UIView *vie in arr1)
    {
        if([vie isKindOfClass:[UITableViewCell class]])
        {
            cell=(CustomCellAchievementController*)vie;
            cell.name.text= [achievement objectAtIndex:indexPath.row];
            cell.description.text = [description objectAtIndex:indexPath.row];

        }
    }
}

return cell;

}

答案 1 :(得分:0)

检查您的插座。奥特莱斯应该与班级联系,而不是与班主所有。
详情请参阅Loaded nib but the view outlet was not set - new to InterfaceBuilder