0

在这里扯我的头发,有什么想法吗?

我有一个表格视图,当它加载时,第 1 节是一个滚动视图,它从内容偏移量开始一直滚动到最后。第 2 节是空白的,我从我的 API 获取数据,此时我刷新了 tableView。我想在我的控制下(即使用 UIView 动画块)缓慢地将滚动视图动画化回 contentOffset 0,0,问题是动画立即完成。我假设 tableView 的重新加载会导致这个问题,但不确定,我希望 tableView 重新加载然后运行我的动画。我试图dispatch_sync阻止主队列,这当然会导致死锁,这不是我的目标:P

这是我的动画代码,相当简单。

   [UIView animateWithDuration:1.2 delay:0 options:UIViewAnimationOptionCurveEaseInOut
                     animations:^{
                         scrollView_.contentOffset = CGPointMake(0, 0);
                     }
                     completion:^(BOOL finished){

                     }];

这在我的加载数据完成块之后被调用[tableView reloadData]

4

1 回答 1

2

reloadData将从视图中删除所有单元格并再次插入它们。

我看到的最简单的解决方案是只重新加载第二部分,而不是第一个带有滚动视图的部分。

于 2013-06-14T20:10:40.610 回答