Загрузите UITableView с NSArray - PullRequest
       11

Загрузите UITableView с NSArray

0 голосов
/ 05 января 2012

У меня есть NSArray из NSDictionaries, где каждый словарь имеет одинаковые ключи. Я хочу раздел для каждого словаря в массиве.

Например, если массив имеет 4 словаря, то таблица будет иметь 4 раздела. Тогда каждая ячейка в каждом разделе будет соответствовать этому значению в словаре.

Есть ли простой способ сделать это?

Например, у меня есть NSArray с 3 словарями, где каждый словарь имеет 3 ключа, имя, пол и дату.

Это означает, что таблица должна иметь 3 раздела, где каждый заголовок раздела является ключом даты для своего словаря. Тогда есть 2 ячейки для этого раздела, соответствующие имени и значениям пола.

1 Ответ

1 голос
/ 06 января 2012

Да. Я знаком с этими методами, но я не уверен, как правильно получить ключ даты из словаря в методе titleForHeaderInSection.

- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section{
    return (NSString *)[myArray objectAtIndex:section] objectForKey:@"date"];
}

Это сработало безупречно.Но как я могу редактировать код в cellForRowAtIndexPath подобным образом?

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

    NSString *value = @"Unknown";
    if (indexPath.row == 0){
        value = (NSString *)[[myArray objectAtIndex:indexPath.section] objectForKey:"name"]; 
    }else if (indexPath.row == 1){
        value = (NSString *)[[myArray objectAtIndex:indexPath.section] objectForKey:@"gender"]; 
    }

    myCell.textPropertyOrWhatever = value;
    return myCell;
}

Вы вообще пытаетесь это сделать?: P

...