0

我正在制作一个应用程序,用户可以在其中收藏详细视图中的不同项目。

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

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

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

4

1 回答 1

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;
}
于 2013-04-22T08:49:34.867 回答