在ViewController中设置自定义UITableViewCell的UILabel.text

时间:2012-08-15 02:35:39

标签: iphone ios uitableview

我有一个UITableView,我在界面构建器中填充了自定义UITableViewCell。我有一些问题访问这些自定义tableviewcells属性,我希望得到一些帮助。

在Interface Builder中我将自定义tableviewcell的class设置为当前的View控制器(因此我可以将所有标签对象分配给Interface Builder中的正确标签),所以我也设置了{{ 1}}标签到Interface Builder中的正确标签但是当我尝试将NSString从数组对象变量(类型为NSString)传递给UIlabel的文本时会发生此错误。

IBOutlet

下面是我用自定义tableviewcell设置tableview的代码,然后尝试用正确的文本填充单元格UILabel ..

Property 'cellDescription' not found on object of type 'UITableViewCell *'

1 个答案:

答案 0 :(得分:2)

您必须输入UITableViewCellAutomotiveSearchCell

我认为你的代码很奇怪(autoSearchCell没有声明),但你必须做以下事情。

cell = (AutomotiveSerachCell* )autoSearchCell;

以上代码不起作用,应遵循以下代码。


UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

转换为

AutomotiveSearchCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

如果上述方法不起作用,请参阅以下流程。

  1. 制作CustomCell类。 enter image description here

  2. 制作CustomCell xib。 enter image description here enter image description here enter image description here

  3. 将标签链接到CustomCell类。 enter image description here

  4. 导入标题#import "AutomotiveSearchCell.h"并执行以下代码复制和粘贴。


  5. - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
    {
        AutomotiveSearchCell *cell = nil;
    
        if(!cell)
        {
            UINib *nib = [UINib nibWithNibName:@"AutomotiveSearchCell" bundle:nil];
            NSArray *arr = [nib instantiateWithOwner:nil options:nil];
            cell = [arr objectAtIndex:0];
            cell.cellDescription.text = @"Test~!~!~!";
        }
    
        // Configure the cell...
    
        return cell;
    }
    

    enter image description here