我有一个滚动视图,其中包含从json文件加载的对象。每3秒重新加载一次数据,并没有真正改变(除非用户添加了新数据)。重新加载非常快,但滚动视图滚动回到顶部。我希望它保持原状。我怎么能这样做?
我使用此代码删除重新加载的所有内容:
[scrollView.subviews makeObjectsPerformSelector:@selector(removeFromSuperview)];
然后我重新填充滚动视图。重新加载时,滚动视图vil的框架返回初始值,只有添加对象才会使其展开。
答案 0 :(得分:0)
这是假设您使用从JSON文件接收的每个对象设置UIScrollView的contentSize:
当第一个对象再次从JSON文件加载时,它将contentSize设置得非常低,因此滚动到顶部。
在添加所有对象之前,您真的不想从UIScrollView中删除所有内容。您应该缓存那里的对象,只有在发生更改时才执行此操作。即使有变化,我也会考虑添加更改,而不是删除和重新添加对象。