Эффект аккордеона в UITableView - PullRequest
1 голос
/ 30 ноября 2011

Я хочу расширить ячейку в табличном представлении при ее выборе. Изначально это должно выглядеть так:

И при расширении, это должно дать больше деталей, как это:

Вот как я изначально создаю ячейку:

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString * MyIdentifier = @"MyIdentifier";
    UITableViewCell * cell = [self.table dequeueReusableCellWithIdentifier:MyIdentifier];

    if (cell == nil) {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:MyIdentifier] autorelease];
        cell.textLabel.frame = CGRectMake(0, 0, cell.textLabel.frame.size.width, 
        cell.textLabel.frame.size.height);
 }
 id key = [[articles allKeys] objectAtIndex:indexPath.section];
 cell.textLabel.text =@"TitleTitleTitle";        
 cell.detailTextLabel.text=@"DeatailDeatailDeatailDeatailDeatailDeatailDeatailDeatailDeatai";
 return cell;
}

1 Ответ

1 голос
/ 30 ноября 2011

Я опубликовал пример кода на github

Ваш tabelView:cellForRowAtIndexPath: может выглядеть следующим образом.Вам также понадобится динамическая высота ячейки в tableView:heightForRowAtIndexPath:, поэтому вам следует преобразовать размерные части в вспомогательные методы, которые записывают размеры 2 меток и высоту ячейки в ivars, вызывая метод из tableView:heightForRowAtIndexPath:, используйте высоту ячейки и размеры меток в tabelView:cellForRowAtIndexPath:

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