在UITableView创建的表格中,每一行中插入图片中已介绍了如何在表格的每一行中添加图片和文本,下面将介绍一下怎么添加一个自定义视图到每一行中,实现效果:
实现主要代码:
//添加每一行的信息
- (UITableViewCell *) tableView:(UITableView *)tableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *tag=@”tag”;
UITableViewCell *cell=[tableView dequeueReusableCellWithIdentifier:tag];
if (cell==nil) {
CGRect cellFrom=CGRectMake(0, 0, 300, 65);
cell=[[[UITableViewCell alloc] initWithFrame:cellFrom
reuseIdentifier:tag] autorelease];
CGRect nameLabelRect=CGRectMake(0, 5, 70, 15);
UILabel *nameLabel=[[UILabel alloc] initWithFrame:nameLabelRect];
nameLabel.textAlignment=UITextAlignmentRight;
nameLabel.text=@”姓名“;
nameLabel.font=[UIFont boldSystemFontOfSize:12];
[cell.contentView addSubview:nameLabel];
[nameLabel release];
CGRect colorLabelRect=CGRectMake(0, 26, 70, 15);
UILabel *colorLabel=[[UILabel alloc] initWithFrame:colorLabelRect];
colorLabel.textAlignment=UITextAlignmentRight;
colorLabel.text=@”性别“;
colorLabel.font=[UIFont boldSystemFontOfSize:12];
[cell.contentView addSubview:colorLabel];
[colorLabel release];
CGRect nameValueLabelRect=CGRectMake(80, 5, 200, 15);
UILabel *nameValue=[[UILabel alloc] initWithFrame:nameValueLabelRect];
nameValue.tag=kNameValueTag;
[cell.contentView addSubview:nameValue];
[nameValue release];
CGRect colorValueLabelRect=CGRectMake(80, 25, 200, 15);
UILabel *colorValue=[[UILabel alloc] initWithFrame:colorValueLabelRect];
colorValue.tag=kColorValuetag;
[cell.contentView addSubview:colorValue];
[colorValue release];
}
NSUInteger row=[indexPath row];
NSDictionary *rowData=[self.computers objectAtIndex:row];
UILabel *name=(UILabel *)[cell.contentView viewWithTag:kNameValueTag];
name.text=[rowData objectForKey:@"姓名"];
UILabel *color=(UILabel *)[cell.contentView viewWithTag:kColorValuetag];
color.text=[rowData objectForKey:@"性别"];
UIImage *image=[UIImage imageNamed:@"ceshi.png"];
cell.image=image;
return cell;
}
源代码:http://easymorse.googlecode.com/svn/trunk/iphone.tablecell/