Objective-C, UITableView, требуется уточнение - PullRequest
0 голосов
/ 15 августа 2011

В моей программе есть 2 NSMutableArray, каждый из которых содержит список элементов. Некоторые стоят более 50 долларов, некоторые - менее 50 долларов. Задача состоит в том, чтобы отобразить эту информацию как часть таблицы. Итак ..

В моей таблице 2 раздела

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

Каждый раздел имеет название

- (NSString *)tableView:(UITableView *)
     tableView titleForHeaderInSection:(NSInteger)section {

    NSString *lSectionTitle;
    switch (section) {
        case 0:
            lSectionTitle = @"Under $50";
            break;
        case 1:
            ... 

Каждый раздел имеет количество

-(NSInteger) tableView:(UITableView *)tableView 
     numberOfRowsInSection:(NSInteger)section {    
    NSInteger count= 0;

    switch (section) {
        case 0:
            count =  [[[PossessionStore defaultStore] under50Possessions] count];
            break;
        case 1:
            .....

И, наконец, мы выясняем, что отображать как часть данной ячейки

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

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"UITableViewCell"];

    if (!cell) {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"UITableViewCell"]autorelease];
    }

    Possession *p = [[[PossessionStore defaultStore] allPossessions] objectAtIndex:[indexPath row]];

    [[cell textLabel] setText:[p description]];

    return cell;
}

Вышеприведенный код ссылается на allPossessions, который состоит из предметов стоимостью более 50 долларов США и менее 50 долларов США. Я застрял в этой точке.

В этом примере могу ли я узнать, меня ли просят нарисовать ячейку для категории ниже или выше 50 долларов?

1 Ответ

1 голос
/ 15 августа 2011

Все хорошо, но я действительно не понимаю, как UITtable "знает" размещать предметы стоимостью до 50 долларов и более в правильной категории.

Это не так. Похоже, что вам может просто повезти в том, что PosessionStore возвращает данные из -allPossessions, если их имущество организовано по цене или что-то в этом роде. Ваш метод -tableView:cellForRowAtIndexPath: должен учитывать раздел и строку при заполнении каждой ячейки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...