解决UIScrollView中添加子控件出现“UIScrollView Scrollable Content Size Ambiguity”的办法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决UIScrollView中添加子控件出现“UIScrollView Scrollable Content Size Ambiguity”的办法相关的知识,希望对你有一定的参考价值。

来自StackOverflow的帖子,原文见这里

 

So I just sorted out in this way:

  1. Add in the UIScrollView a UIView (we can call that contentView);

  2. In this contentViewset top, bottom, left and right margins to 0 (of course from the scrollView which is the superView); Set also align center horizontally and vertically;

Finished.

Now you can add all your views in that contentView, and the contentSize of the scrollView will be automatically resized according with the contentView.

Update:

Some special case is covered by this video posted by @Sergio in the comments below.

shareimprove this answer
39  
This is brilliant! Center X and Y was the key piece! – black_stallion Mar 23 ‘15 at 7:13
14  
Almost perfect, except that the scrollview can no longer guess the length of your content and resize accordingly it‘s contentSize to fit the objects inside. I have a tableview inside the contentView whose height changes (via constraint) and the scrollview doesn‘t allow me to scroll. – CyberMew May 11 ‘15 at 7:13
9  
Maybe this video can help to overcome all remaining issues. – Sergio Jul 11 ‘15 at 18:57
4  
this doesnt make it scroll tho. – dorian Aug 6 ‘15 at 12:46
1  
@Matteo Gobbi: What do you mean by "(of course from the scrollView which is the superView)" ? Do I have to "set top, bottom, left and right margins to 0" for the contentView or the scrollView ? – salocinx Sep 1 ‘15 at 8:30

以上是关于解决UIScrollView中添加子控件出现“UIScrollView Scrollable Content Size Ambiguity”的办法的主要内容,如果未能解决你的问题,请参考以下文章

iOS开发UI篇—UIScrollView控件实现图片缩放功能

iOS UI控件7(UITableView)

UIScrollView 在视图出现之前不会接受子视图

UIScrollView添加约束报错问题

iOS开发UI篇—UIScrollView控件介绍

UI控件(UIScrollView)