我有UITableVIew
。有3行,我希望每一行都有不同的单元格内容。
第一个单元格应该有一个LABEL,第二个单元格应该有一个LABEL a按钮,第三个单元格应该有2个标签和一个按钮。下图说明了表格的显示方式。
我可以毫无问题地调整3个单元格的高度,我使用了heightForRowAtIndexPath
。
首先,我将Label(从使用storyboard的第一个单元格拖动到.h文件)拖动以创建IBOutlet。同样,我也为所有属于其他细胞的细胞含量做了。
我结束了以下错误The myButton outlet from the MyTableViewController to the UIButton is invalid. Outlets cannot be connected to repeating content.
有人可以告诉我如何使用故事板为不同的单元格添加自定义内容。
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"c1"];
UITableViewCell *cell1 = [tableView dequeueReusableCellWithIdentifier:@"c2"];
//content for cell 1
cell.label1.text =@"hi";
//content for cell 2
cell1.label2.text =@"hi 2";
更新
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
Cell1 *cell = [tableView dequeueReusableCellWithIdentifier:@"cell1"];
Cell2 *cell1 = [tableView dequeueReusableCellWithIdentifier:@"cell2"];
if (cell == nil)
{
cell = [[Cell1 alloc] initWithStyle:UITableViewCellStyleSubtitle
reuseIdentifier:@"cell1"];
}
if (cell1 == nil) {
cell1 =[[Cell2 alloc] initWithStyle:UITableViewCellStyleSubtitle
reuseIdentifier:@"cell2"];
}
cell1.la1.text= @"Hey Man";
答案 0 :(得分:1)
您无法从UITableViewCell
到UITableViewController
创建插座。您需要创建UITableViewCell
的子类,将原型单元设置为该类类型,然后将插座连接到此新单元类。
tableView中可以有多个单元格副本,出口有1对1的映射。如果您拥有该单元格的多个副本,尝试执行此操作将会中断。
我建议看一下这个链接:
http://www.raywenderlich.com/50308/storyboards-tutorial-in-ios-7-part-1
有两个部分详细介绍如何从"设计自己的原型单元格开始创建单元格"
修改强>
如果您的问题是何时创建每个单元格,则需要使用回调中的indexPath
来解决此问题。以下是一个示例。然而,这与您询问如何在单元格上使用IBOutlet的问题完全无关。
if(indexPath.row == 1)
{
MyLabelCell *cell = [tableView dequeueReusableCellWithIdentifier:@"c1"];
// customise cell
return cell;
}
else if (indexPath.row == 2 || indexPath.row == 3)
{
MyButtonCell *cell = [tableView dequeueReusableCellWithIdentifier:@"c2"];
// customise cell
return cell;
}