首先在表格视图的单独部分中显示收藏夹

时间:2013-04-22 08:27:30

标签: objective-c

我正在创建一个应用,用户可以在详细视图中收藏不同的项目。

我有一个表格视图,其中显示了所有项目,我想在同一个表格视图的单独部分中显示收藏夹。任何想法如何做到这一点?

此时我将所有收藏夹保存在名为favouriteItems的NSMutableArray中。

我想我必须从原始数组中删除最喜欢的对象。 但是我可以用两个数组填充tableview吗? 一个数组在第一部分中有收藏,其余在第二部分

1 个答案:

答案 0 :(得分:2)

当然,你可以。您只需要在表格视图中选择2个部分。

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
    return 2;
}

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

    switch (section) {
        case 0:
            return normalItems.count;
            break;
        case 1:
            return favouriteItems.count;
        default:
            break;
    }
    return 0;
}

- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section {
    switch (section) {
        case 0:
            return @"Normal Items";
            break;
        case 1:
            return @"Favorite Items";
        default:
            break;
    }
    return nil;
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

    static NSString *CellIdentifier = @"MyCell";

    CeldaCell *cell = (CeldaCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];

    if (cell == nil) {
        cell = [[CeldaCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
    }

    switch (indexPath.section) {
        case 0:
            cell.textLabel.text = [normalItems objectAtIndex:indexPath.row];
            break;
        case 1:
                        cell.textLabel.text = [favouriteItems objectAtIndex:indexPath.row];
            break;
    }

    return cell;
}