Некорректное поведение ячейки при удалении из UITableView в iOS 7

Рейтинг: 0Ответов: 0Опубликовано: 10.02.2015

Есть таблица, в ней ячейка с картинкой:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    ISHPictureTVC *cell = [tableView dequeueReusableCellWithIdentifier:@"detailPicture" forIndexPath:indexPath];
    cell.pictureView.image = picture;
    return cell;
}

Ячейка оформлена в storyboard, содержимае ячейки привязано к границам. Размер ячейки высчитывается в:

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
     CGFloat ratio = picture.size.height / picture.size.width; 
     CGFloat size = [UIScreen mainScreen].bounds.size.width * ratio;
     return size;
}

При удалении ячейки свайпом:

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
{
    if (editingStyle == UITableViewCellEditingStyleDelete) {
        picture = nil;

        [tableView beginUpdates];
        [tableView deleteRowsAtIndexPaths:@[indexPath]
                         withRowAnimation:UITableViewRowAnimationFade];
        [tableView endUpdates];
    }
}

В iOS 8.1 анимация удаления проигрывается корректно, а в iOS 7.1.2 (про другие версии не знаю) на устройстве и в симуляторе анимация выполняется некорректно. Красная кнопка "Удалить" во время сжатия удаляемой строки остаётся неизменной.

iOS7 alt text

iOS8 alt text

Плюс ко всему изображение видно, если мало строк в таблице.

Как сделать так, чтобы кнопка "Удалить" сжималась на iOS 7? Собственно тот же вопрос к содержимому ячейки.

Ответы

Ответов пока нет.