我正在使用故事板,因为我有一个定制的表格。我需要在单元格内的标签上显示值。我尝试为它创建一个 IBOutlet,但它似乎不接受它,它给了我一个错误消息,“连接“xyz”不能将原型对象作为其目的地”
问问题
1225 次
3 回答
2
找到了解决方案,我动态创建了一个标签并为其设置值` if (indexPath.row == 2) { static NSString *Identifier1 = @"Cell3";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:Identifier1];
if (cell == nil)
{
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:Identifier1];
cell.textLabel.lineBreakMode=NSLineBreakByCharWrapping;
cell.textLabel.numberOfLines = 0;
cell.textLabel.font = [UIFont fontWithName:@"Helvetica" size:15.0];
}
UILabel *txtDate = [[UILabel alloc] initWithFrame:CGRectMake(13.0f, 26.0f, 294.0f, 30.0f)];
txtDate.text = stringFromDate;
[txtDate setUserInteractionEnabled:NO];
txtDate.font = [UIFont fontWithName:@"Helvetica" size:15.0];
[cell.contentView addSubview:txtDate];
return cell;
}`
于 2013-05-28T10:11:28.267 回答
1
在具有动态单元格的表格视图中,您不能将表格视图控制器中的 IBOutlet 连接到单元格内的元素,因为单元格是原型对象。如果您将表格视图设置为具有静态单元格,这将是一种不同的情况。
因为您使用的是动态单元格,所以您需要子类化 UITableViewCell,为单元格子类中的标签创建一个出口,并将其连接到 Storyboard 中的 UILabel。
如果您事先知道行在数量等方面不会改变,另一种选择就是使用静态表格视图单元格。
于 2013-05-28T09:37:14.123 回答
0
iOS 10+ & Swift 3+,使用这个
let Identifier1 = "Cell3"
var cell: UITableViewCell = tableView.dequeueReusableCellWithIdentifier(Identifier1)
if cell == nil {
cell = UITableViewCell(style: UITableViewCellStyleDefault, reuseIdentifier: Identifier1)
cell.textLabel.lineBreakMode = NSLineBreakByCharWrapping
cell.textLabel.numberOfLines = 0
cell.textLabel.font = UIFont(name: "Helvetica", size: 15.0)
}
var txtDate: UILabel = UILabel(frame: CGRectMake(13.0, 26.0, 294.0, 30.0))
txtDate.text = stringFromDate
txtDate.userInteractionEnabled = false
txtDate.font = UIFont(name: "Helvetica", size: 15.0)
cell.contentView.addSubview(txtDate)
return cell
于 2017-03-02T18:16:26.697 回答