#import "ViewController.h"
@interface ViewController ()
<
UITableViewDelegate,
UITableViewDataSource
>
@property(nonatomic,retain)NSArray *dataArray;
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
self.dataArray = @[@"文强",@"小明",@"小强",@"额尔敦"];
UITableView *tableView = [[UITableView alloc] initWithFrame:self.view.bounds style:UITableViewStylePlain];
tableView.backgroundColor = [UIColor redColor];
//设置行高。
tableView.rowHeight = 200.0f;
//分割线的样式
tableView.separatorStyle = UITableViewCellSeparatorStyleSingleLine;
//分割线的颜色
tableView.separatorColor = [UIColor cyanColor];
tableView.delegate = self;
tableView.dataSource = self;
[self.view addSubview:tableView];
UIView *headerView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, tableView.bounds.size.width, 300)];
headerView.backgroundColor = [UIColor greenColor];
tableView.tableHeaderView = headerView;
}
//设置有几个分组
-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return 10;
}
//设置某一section中的行数
-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return self.dataArray.count;
}
//设置某一位置的cell,屏幕向上滑,每次出现一cell,这个方法走一次
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
NSString *name = self.dataArray[indexPath.row];
if ([@"额尔敦" isEqualToString : name ]) {
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"eerdun"];
if (nil == cell) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"eerdun"];
}
return cell;
}
//当第一页的时候,重用池cell为空,
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cell"];
//这里判断,如果重用池为空, 走判断里边的方法,创建一个cell,
if (nil == cell) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"cell"];
}
cell.textLabel.text = name;
//下边的这句不可以写到判断里边,一旦写到判断里边,当重用池有东西以后,就不会再走这个方法,
//cell.textLabel.text = [NSString stringWithFormat:@"当前的行数:%ld",indexPath.row];
return cell;
}
//当点击某一个cell的时候回触发该方法
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
//输出第几个分组第几行的内容
NSLog(@"section :%ld,row:%ld,content:%@",indexPath.section,indexPath.row,self.dataArray[indexPath.row]);
//取消选中的状态,点一下就么有了
[tableView deselectRowAtIndexPath:indexPath animated:YES];
}
@end
网友评论