我有一个UIScrollView
,其中包含一个子视图。如果我在创建后立即设置contentSize
UIScrollView
,那么一切都按照我的预期进行,我会滚动。
挑战是UIScrollView
内的视图是动态调整大小的。宽度是固定的,但在设置scrollview时高度未知。
当我在内部视图完成之后执行[scrollView setContentSize:CGRectMake(...)]
时,滚动视图会更新为正确的大小并且滚动有效。所以基本滚动工作正常。
然而,主要的问题是,当我setContentSize
稍后,UIScrollView
决定向下滚动(带动画)到滚动视图的末尾,这不是我想要的,我希望滚动保持在顶部,让滚动视图中的内容变大或变小,而不改变明显的滚动位置。
我错过了什么?
答案 0 :(得分:6)
为什么不在调用setContentSize时调用[scrollview setContentOffset:CGPointMake(0,0)];
?
答案 1 :(得分:0)
强制UIScrollView
仅滚动,例如在水平方面,我总是使用以下方法将contentSize
的不可滚动值设置为0,
CGSizeMake(contentSize.width, 0).