Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 使用UIScrollView自动布局_Ios_Xcode_Uiscrollview_Autolayout - Fatal编程技术网

Ios 使用UIScrollView自动布局

Ios 使用UIScrollView自动布局,ios,xcode,uiscrollview,autolayout,Ios,Xcode,Uiscrollview,Autolayout,我在Xcode中使用autolayout,并创建了一个相当高(1300px)的ViewController,它带有一个uiscrollview来上下导航。我将viewcontroller设置为自由形式,因此其尺寸为[3751300]。然后我合并了scrollview,添加了content视图以及所有子视图&约束所有内容,没有留下任何约束错误。在运行时没有错误,但是当我希望它非常高(~1300px)并且可以滚动时,所有的东西都被压缩到了正常的屏幕大小。关于我做错了什么,有什么线索吗 下图显示了问题

我在Xcode中使用autolayout,并创建了一个相当高(1300px)的ViewController,它带有一个uiscrollview来上下导航。我将viewcontroller设置为自由形式,因此其尺寸为[3751300]。然后我合并了scrollview,添加了content视图以及所有子视图&约束所有内容,没有留下任何约束错误。在运行时没有错误,但是当我希望它非常高(~1300px)并且可以滚动时,所有的东西都被压缩到了正常的屏幕大小。关于我做错了什么,有什么线索吗

下图显示了问题所在:

  • 外部的黑色Blox是ViewController的视图

  • 内部的黑框是子视图

  • 蓝色框就是屏幕上显示的内容


  • 确保以下内容正确:

  • 这4个内容视图是
    UIScrollView
    的子视图,而不是视图控制器
  • 4个内容视图上的自动布局约束必须仅引用UIScrollView,而不是视图控制器的视图
  • 第四个框不能有底部约束

  • 看起来第四个框有一个约束,使其底部与视图控制器视图的底部对齐。这将迫使其他视图合并在一起。第四个框也不能有底部约束,以便滚动视图可以调整自身大小以包含其子视图。

    是的,正确的@Ryan Cocuzzo。我认为您需要将子视图优先级从1000设置为250。请参见下面的屏幕截图

    1) 选择子视图的高度约束

    2) 然后到尺寸检查员处查看

    3) 现在将优先级约束从1000更改为250

    4) 最后你会变成这样


    我认为您需要描述您使用的约束条件。听起来您的约束可能涉及滚动视图而不是内容视图,或者类似的内容。请删除使内容视图的高度与父视图相同的约束。