向动态视图单元格添加另一个字幕
Posted
技术标签:
【中文标题】向动态视图单元格添加另一个字幕【英文标题】:Add another subtitle to dynamic view cell 【发布时间】:2013-09-06 02:42:21 【问题描述】:快速提问。我正在尝试在原型单元格中添加另一个单元格。我添加了行“cell.textLabel.text = person.firstname;”但不要在单元格上得到任何东西。有人可以帮忙吗。
谢谢
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
static NSString *CellIdentifier = @"Persons Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil)
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
// Configure the cell...
Person *person = [self.fetchedResultsController objectAtIndexPath:indexPath];
NSString *fullname = [NSString stringWithFormat:@"%@, %@", person.surname, person.firstname];
cell.textLabel.text = fullname;
cell.detailTextLabel.text = person.inEvent.name;
cell.textLabel.text = person.firstname;
return cell;
【问题讨论】:
【参考方案1】:“在原型单元格中添加另一个单元格”是什么意思。 ?我认为根据您的代码,您想要的是将另一个 UILabel
添加到您的代码中。从默认的UITableViewCell
开始,您只有两个textLabel
和detailTextLabel
。如果你想要更多,你必须自己创造。
请注意,您将同一标签设置了两次。
cell.textLabel.text = fullname; //setting first time
cell.detailTextLabel.text = person.inEvent.name;
cell.textLabel.text = person.firstname; //setting second time. This will set a new text to 'textLabel', losing its previous content (fullname)
您可以分配一个新的并添加为cellForRowAtIndexPath:
内单元格内容视图的子视图。但我真的建议创建UITableViewCell
的子类,使用Interface Builder 来根据需要定位标签,为它们创建IBOutlets
,并将其文本设置在cellForRowAtIndexPath:
中。
【讨论】:
以上是关于向动态视图单元格添加另一个字幕的主要内容,如果未能解决你的问题,请参考以下文章
应用于字幕表视图单元格的 UITableViewAutomaticDimension 无法正常工作
实现 UITableView (Slave) 的动态高度,它作为子视图添加到另一个具有动态高度的 UITableView (Master) 的自定义单元格中