UI学习之UITableView之分组显示

Snail—UI学习之UITableView之分组显示

分类:iOS学习之UI

之前的demo都是一个分组显示数据的

这次我们用的是带有分组的tableView

#import "WJJRootViewController.h"@interface WJJRootViewController (){UITableView * _tableView;NSMutableArray * _dataArray;}@end@implementation WJJRootViewController- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil{self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];if (self) {// Custom initialization}return self;}- (void)viewDidLoad{[super viewDidLoad];// Do any additional setup after loading the view.[self createDataSource];}- (void)createDataSource{_dataArray = [[NSMutableArray alloc] init];//先把工程下 所有的plist路径获取到 装到数组里面NSArray * plistPath = [[NSBundle mainBundle] pathsForResourcesOfType:@"plist" inDirectory:@""];//遍历这个数组 把系统的plist剔除for (NSString * pathString in plistPath) {//如果这个路径 是系统的plist路径 略过if ([pathString hasSuffix:@"Info.plist"]) {continue;}NSArray * plistArray = [[NSArray alloc] initWithContentsOfFile:pathString];[_dataArray addObject:plistArray];}[self createTableView];}- (void)createTableView{//tableView的风格是分组的_tableView = [[UITableView alloc] initWithFrame:self.view.boundsstyle:UITableViewStyleGrouped];//设置代理和数据源代理_tableView.delegate = self;_tableView.dataSource = self;[self.view addSubview:_tableView];}#pragma mark –UITableViewDelegate–//tableView是分组类型的 先设置组的个数- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{return _dataArray.count;}//设置每组有多少行- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{//返回数据源里 与 section相对应的 数组的元素个数return [[_dataArray objectAtIndex:section] count];}//cell的代理方法- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{UITableViewCell * cell = [_tableView dequeueReusableCellWithIdentifier:@"ID"];if (!cell) {cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"ID"];}NSDictionary * dict = [_dataArray[indexPath.section] objectAtIndex:indexPath.row];[cell.imageView setImage:[UIImage imageNamed:[NSString stringWithFormat:@"%@",[dict objectForKey:@"imageName"]]]];[cell.textLabel setText:[NSString stringWithFormat:@"%@",[dict objectForKey:@"imageInfo"]]];[cell.detailTextLabel setText:[NSString stringWithFormat:@"%@",[dict objectForKey:@"imageInfo"]]];return cell;}//设置头标题- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section{//这里的数据是我们自己写的NSArray * titleArray = @[@"圣斗士",@"海贼王",@"火影忍者",@"妹子们"];return titleArray[section];}//设置索引- (NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView{return @[@"圣",@"海",@"火",@"妹"];}//返回行标题的高度- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section{return 25;}- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{[tableView deselectRowAtIndexPath:indexPath animated:YES];}//返回行的高度- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{return 70;}- (void)didReceiveMemoryWarning{[super didReceiveMemoryWarning];// Dispose of any resources that can be recreated.}@end

版权声明:本文为博主原创文章,未经博主允许不得转载。

上一篇Snail—UI学习之表视图TableView多行删除

顶0踩0

,比谁都感激这份“不能说出的爱”。

UI学习之UITableView之分组显示

相关文章:

你感兴趣的文章:

标签云: