更改单元格高度将其滚动到屏幕

时间:2015-12-24 07:12:33

标签: ios objective-c uitableview

我正在尝试通过在heightForRow方法中实现不同的高度来扩展单元格。一切都工作得很好,但当我扩展单元格时,它会以某种方式滚动屏幕。这就是我的意思(注意反馈部分):

enter image description here

正如你所看到的那样有反馈单元格,当我点击表情符号时,我希望它能够扩展。我改变状态并重新加载行。这就是:

enter image description here

正如您所看到的,该部分完全滚动屏幕并且不可见。

如果向下滚动,就可以了:

enter image description here

以下是我使用的代码:

触发细胞扩增的方法:

self.feedbackCellStatus = FeedbackCellStatusExpanded;

NSIndexPath *indexPathToUpdate = [NSIndexPath indexPathForRow:0 inSection:[self indexOfSection:ReportSectionFeedback]];

[self.tableView beginUpdates];
[self.tableView reloadRowsAtIndexPaths:@[indexPathToUpdate] withRowAnimation:UITableViewRowAnimationAutomatic];
[self.tableView endUpdates];

这是我的行高:

if (indexPath.section == [self indexOfSection:ReportSectionFeedback]) {
        if (self.feedbackCellStatus == FeedbackCellStatusStarting) {
            return FeedbackHeightStarting;
        } else if (self.feedbackCellStatus == FeedbackCellStatusExpanded) {
            return FeedbackHeightExpanded;
        } else if (self.feedbackCellStatus == FeedbackCellStatusDone) {
            return FeedbackHeightDone;
        }

0 个答案:

没有答案