iOS开发iOS Developer

IOS cell 显示多行 自动换行

2016-12-01  本文已影响295人  JakieZhang

//计算行的高度.

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath

{

NSString* cellText = [self.array objectAtIndex:indexPath.row];

UIFont *cellFont = [UIFont fontWithName:@"Helvetica" size:14.0];

CGSize constraintSize = CGSizeMake(240.0f, MAXFLOAT);

CGSize labelSize = [cellText sizeWithFont:cellFont constrainedToSize:constraintSize lineBreakMode:UILineBreakModeWordWrap];

return labelSize.height + 20;

}

//显示行.

-(UITableViewCell*) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

{

static NSString *SimpleTableIdentifier = @"SimpleTableIdentifier";

UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier: SimpleTableIdentifier];

if (cell == nil)

{

cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:SimpleTableIdentifier];

}

NSInteger row = [indexPath row];

cell.textLabel.text = [self.array objectAtIndex:row];

//自动换行,这里最重要

cell.textLabel.numberOfLines = 0;

//Cell中的小箭头

cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;

return cell;

}

其中array为NSObject* 类型的存放NSString集合的对象。

上一篇下一篇

猜你喜欢

热点阅读