ios7(包括)之后tableView中不用调用tableView:heightForRowAtIndexPath:方法来对应不同的cell的高度,系统自动cell的自适应布局,很简单。
使用如下:
在viewDidLoad中代码如下:
_tableView=[[UITableView alloc] initWithFrame:self.view.frame style:UITableViewStylePlain];
_tableView.dataSource=self;
_tableView.delegate=self;
[self.view addSubview:_tableView];
_tableView.rowHeight=UITableViewAutomaticDimension;
_tableView.estimatedRowHeight=100; (必须要写,不然无法自适应)
dataSource如下:
-(void)prepareDataSource
{
_dataSoucre=[[NSMutableArray alloc] initWithObjects:@"试问谁可,洁白无比。除非你是我,才可与我常在。试问谁可,洁白无比。除非你是我,才可与我常在。试问谁可,洁白无比。除非你是我,才可与我常在。试问谁可,洁白无比。除非你是我,才可与我常在。试问谁可,洁白无比。除非你是我,才可与我常在。试问谁可,洁白无比。除非你是我,才可与我常在。试问谁可,洁白无比。除非你是我,才可与我常在。试问谁可,洁白无比。除非你是我,才可与我常在。试问谁可,洁白无比。除非你是我,才可与我常在。试问谁可,洁白无比。除非你是我,才可与我常在。试问谁可,洁白无比。除非你是我,才可与我常在。试问谁可,洁白无比。除非你是我,才可与我常在。",@"试问谁可,洁白无比。",@"试问谁可,洁白无比。",@"试问谁可,洁白无比。",@"除非你是我,才可与我常在。",@"除非你是我,才可与我常在。",@"除非你是我,才可与我常在。",@"除非你是我,才可与我常在。",@"试问谁可,洁白无比。除非你是我,才可与我常在。试问谁可,洁白无比。除非你是我,才可与我常在。试问谁可,洁白无比。除非你是我,才可与我常在。试问谁可,洁白无比。除非你是我,才可与我常在。试问谁可,洁白无比。除非你是我,才可与我常在。试问谁可,洁白无比。除非你是我,才可与我常在。试问谁可,洁白无比。除非你是我,才可与我常在。试问谁可,洁白无比。除非你是我,才可与我常在。试问谁可,洁白无比。除非你是我,才可与我常在。试问谁可,洁白无比。除非你是我,才可与我常在。试问谁可,洁白无比。除非你是我,才可与我常在。试问谁可,洁白无比。除非你是我,才可与我常在。", nil];
}
tableView的dataSource和delegate的代码
-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return _dataSoucre.count;
}
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
CustomTableViewCell *cell=[CustomTableViewCell cellWithTableView:tableView];
[cell setTitle:[NSString stringWithFormat:@"%c",'A'+(int)indexPath.row] andDesc:[_dataSoucre objectAtIndex:indexPath.row]];
return cell;
}