首页 > 代码库 > iOS开发学习之#表视图#(5)填充Plain风格的分组表

iOS开发学习之#表视图#(5)填充Plain风格的分组表

选择菜单栏中得File|New|File...命令,选择Property List,创建一个1.plist文件在桌面


核心代码:

#import <UIKit/UIKit.h>

@interface ViewController : UIViewController<UITableViewDataSource>{
    NSDictionary *list;
    NSArray *a;
}


@end
#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    NSString *path = [[NSBundle mainBundle]pathForResource:@"1" ofType:@"plist"];
    NSDictionary *dic = [[NSDictionary alloc]initWithContentsOfFile:path];
    list = dic;
    NSArray *array = [[list allKeys]sortedArrayUsingSelector:@selector(compare:)];
    a = array;
    
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
}

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
    return [a count];
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
    NSString *year = [a objectAtIndex:section];
    NSArray *moviesSection = [list objectForKey:year];
    return [moviesSection count];
}

- (UITableViewCell*)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
    
    static NSString *CellIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
    }
    NSString *str =[a objectAtIndex:[indexPath section]];
    NSArray *movieSection = [list objectForKey:str];
    cell.textLabel.text = [movieSection objectAtIndex:[indexPath row]];
    return cell;
}

- (NSString*)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section{
    NSString *st = [a objectAtIndex:section];
    return st;
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end



iOS开发学习之#表视图#(5)填充Plain风格的分组表