我正在尝试创建一个包含多个标签的UITableViewCell。我一直在尝试做类似的事情(将“名称”和“电话号码”左对齐并在两行上,然后将“年龄”右对齐在单元格中并可能垂直居中。我尝试了不同的UITableViewCellStyle样式但是想要自定义它,以便单元格可以包含3个标签,而不只是两个。任何帮助将不胜感激。提前感谢!
答案 0 :(得分:3)
您可以做的一件事是在界面构建器中创建自定义UITableViewCell并添加您想要的任何标签等,并在填充行时使用该单元格。
你的.h文件中的你需要一个IBOutlet UITableViewCell yourCellName
你的.m文件中的
您可以使用以下方法配置自定义单元格:
-(void)setUpViewComponents{
yourCellName.textLabel.text = @"some kind of text";
yourCellName.textLabel2.text = @"some other text";
//and so on
}
然后在此方法中,您可以使用自定义单元格填充表格
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [self.tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier] autorelease];
}
cell = yourCellName; //you can make additional
//changes to the cell here if you want
return cell;
}
抱歉粗略的例子,希望它至少可以帮助你开始。
答案 1 :(得分:0)
如果您想在UITableView
中拥有自己的单元格,则需要使用UITableViewCell
的子类。有很多例子,例如this one from Cocoa With Love。
答案 2 :(得分:0)
创建一个扩展UITableViewCell的新类。我举个例子:
@interface YourCustomCell : UITableViewCell {
UILabel *lb1,*lb2,*lb3;
}
@implement YourCustomCell
-(id)initWithFrame:(CGRect)frame reuseIdentifier:(NSString *)reuseIdentifier{
if (self=[super initWithFrame:frame reuseIdentifier:reuseIdentifier]){
lb1=[UILabel alloc] initWithFrame:...];
[self.contentView addSubview:lb1];
...
}
return self;
}