Uitableview部分标题

时间:2015-03-27 06:46:47

标签: xcode uitableview

我有一个像这样的tableview代码:

我的tableview.m文件:

@implementation RevealTableViewController {

     NSArray *menuItems;
}

- (void)viewDidLoad {
    [super viewDidLoad];

   menuItems = @[@"CART", @"WISHLIST", @"LOGIN", @"REGISTER", @"NEW ARRIVALS", @"BRANDS", @"CLOTHING", @"ACCESSORIES", @"SHOES",@"CATEGORY 6", @"CATEGORY 7",@"CATEGORY 8",@"CATEGORY 9"];
}


- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {

    return 1;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {

    return menuItems.count;
}


- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    NSString *CellIdentifier = [menuItems objectAtIndex:indexPath.row];
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];

    if ([tableView respondsToSelector:@selector(setSeparatorInset:)]) {
        [tableView setSeparatorInset:UIEdgeInsetsZero];
    }

    if ([tableView respondsToSelector:@selector(setLayoutMargins:)]) {
        [tableView setLayoutMargins:UIEdgeInsetsZero];
    }

    if ([cell respondsToSelector:@selector(setLayoutMargins:)]) {
        [cell setLayoutMargins:UIEdgeInsetsZero];
    }
    return cell;
}

我知道如何通过 titleForHeaderInSection 方法在第一行创建节标题,但是如果我只想将我的tableview表格分组为@" NEW ARRIVALS"到@"类别9"?我该怎么办?

2 个答案:

答案 0 :(得分:0)

此方法返回每个部分中的行数

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section

如果要对表进行分组,请实现此方法

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView;

然后在此委托方法中自定义标题:

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section;

答案 1 :(得分:0)

  

将我的tableview表格@“NEW ARRIVALS”分组到@“CATEGORY 9”

您希望每件商品都有自己的部分吗?

每个项目的1个部分

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
    menuItems.count;
}

每个部分有一行

- (NSInteger)tableView:(UITableView *)tableView 
                      numberOfRowsInSection:(NSInteger)section {
    return 1;
}

每个部分的菜单标题

-(NSString *)tableView:(UITableView *)tableView 
                         titleForHeaderInSection:(NSInteger)section{
   return menuItems[section];
}