滚动视图滚动始终返回顶部

时间:2012-05-15 20:32:15

标签: xcode

我有一个滚动视图,其中包含从json文件加载的对象。每3秒重新加载一次数据,并没有真正改变(除非用户添加了新数据)。重新加载非常快,但滚动视图滚动回到顶部。我希望它保持原状。我怎么能这样做?

我使用此代码删除重新加载的所有内容:

[scrollView.subviews makeObjectsPerformSelector:@selector(removeFromSuperview)];

然后我重新填充滚动视图。重新加载时,滚动视图vil的框架返回初始值,只有添加对象才会使其展开。

1 个答案:

答案 0 :(得分:0)

这是假设您使用从JSON文件接收的每个对象设置UIScrollView的contentSize:

当第一个对象再次从JSON文件加载时,它将contentSize设置得非常低,因此滚动到顶部。

在添加所有对象之前,您真的不想从UIScrollView中删除所有内容。您应该缓存那里的对象,只有在发生更改时才执行此操作。即使有变化,我也会考虑添加更改,而不是删除和重新添加对象。