UITableView - iPad - 在UITableViewCell类型的对象上找不到属性

时间:2012-11-20 16:37:31

标签: xcode ipad uitableview

我已经在Xcode中使用StoryBoard(针对iOS6)将UITableView原型Cell添加到用于iPad应用程序的UIView中。

我遇到的问题是当我尝试引用标签时,我的viewController中无法识别标签。

在我的实施中,我有:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"dashboardMessage";

    UITableViewCell *cell = [_tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
    }


    int row = [indexPath row];


       cell.messageSender.text = [_matches valueForKey:@"from"];

}

最后一行导致错误:在UITableViewCell类型的对象上找不到属性'messageSender'

在单元格的头文件中,我有:

@interface DashboardMessageCell : UITableViewCell

@property (strong, nonatomic) IBOutlet UILabel *messageSender;
@property (strong, nonatomic) IBOutlet UILabel *messageDescr;

并将头文件导入viewController。

我对于导致问题的原因感到很遗憾,我们将非常感谢任何帮助。

感谢。

1 个答案:

答案 0 :(得分:1)

您的单元格类型必须是DashboardMessageCell,您的代码可能是这样的:

(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *CellIdentifier = @"dashboardMessage";
DashboardMessageCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
   if (cell == nil) {
      cell = [[DashboardMessageCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier]; 
   }
   int row = [indexPath row];
   cell.messageSender.text = [_matches valueForKey:@"from"];
}

我不会尝试这段代码 我希望它会对你有所帮助