UIScrollView添加约束报错问题

UIScrollView如果拉到storyBoard上,按照其他视图一样添加约束,会发现报错,然后往上面添加视图同样报错,那么这到底是为什么呢?

其实,这和UIScrollView的contentSize有关联,因为无法确定它的大小,贸然的添加约束肯定不合理,只有当其中的布局都设置好了,根据其中的子控件来决定它的contentSize,这才是正确的做法。

那该如何解决这种问题呢,我觉得正确的做法如下:

1.拉取一个UIScrollView,可以拉动大小,但是不要添加约束。

2.然后拉取一个UIView作为ScrollView的子视图,然后添加约束(0,0,0,0)。

3.发现报错,我们打开报错看一下

点击Add Missing Contraints,发现报错消失,然后给UIVIew添加height=1000,发现有一些约束是多余的,这会影响到UIScrollView的滑动,所以直接删除。

最后直接在UIView上绘制UI子控件,发现没有任何问题,完美解决。

原文地址:https://www.cnblogs.com/shiyong139565/p/12220836.html

时间: 2024-10-11 03:41:29

UIScrollView添加约束报错问题的相关文章

mysql为表添加外键完成性约束 报错Can't create table 'sfkbbs.#sql-513_25' (errno: 150)

代码 alter table sfk_son_module add constraint foreign key(father_module_id) references sfk_father_module(id) on delete restrict on update restrict; (constraint 后面可以加上约束名字) 错误原因是之前两张表的id的类型不一样,一个时int,一个时bigint 解决办法时修改表, alter table sfk_father_module mo

1. 今天添加SDK报错的原因

今天郁闷至极,真机调试时,昨天建好的工程文件一大早来就无法识别手机,还报一大堆的错,后来下午实在没办法,把工程件删了,重新见一个工程,这下竟然没报错了,但是一添加sdk文件进里面去又报错,我日,直接快让我崩溃了,我当时采用的是直接用"Add Files to xxx", 后来才知道这样添加编译器找不到文件,而是要用到Build Phases ->compile sources--添加文件:   link binary with libraries 添加静态库.然后就解决问题了.

使用AutoLayOut为UIScrollView添加约束图解及要点

1.在ViewController中拖入1个UIScrollView,并为其添加约束 约束为上下左右四边与superview对齐 2.在scrollview中,拖入1个UIView,为了便于区分将其设为橙色. 3.为view添加约束 约束为上下左右四边与superview对齐 添加完这些约束后,我们发现出现了错误,不要理会 4.为view添加宽度约束,本例中,想达到的效果是scrollView可以竖向滚动,不要横向滚动, 因此,可以将view的宽度约束为与scrollView相同 5.接下来为v

Storyboard中使用UIscrollView添加约束的开发总结

第一次在项目中用storyboard做界面,一般的界面直接添加约束非常爽快 然后有个界面有scrollview,添加了约束还总是出错 刚开始使用了 wCompact,hRegular,滑动出现问题,有些界面滑动不了或者可以左右滑动 已经在viewDidLoad里面添加了scrollView的contentsize 约束什么的都没有问题,百思不得其解 后来上网查了一下资料 还是scrollView的contentsize的问题 scrollView的contentsize只能在viewDidApp

怎样使用AutoLayOut为UIScrollView添加约束

1.在ViewController中拖入1个UIScrollView,并为其添加约束 约束为上下左右四边与superview对齐 2.在scrollview中,拖入1个UIView,为了便于区分将其设为橙色. 3.为view添加约束 约束为上下左右四边与superview对齐 添加完这些约束后,我们发现出现了错误,不要理会 4.为view添加宽度约束,本例中,想达到的效果是scrollView可以竖向滚动,不要横向滚动, 因此,可以将view的宽度约束为与scrollView相同 5.接下来为v

【vagrant】第一次安装添加box报错:The box failed to unpackage properly....

报错信息 The box failed to unpackage properly. Please verify that the box file you're trying to add is not corrupted and that enough disk space is available and then try again. The output from attempting to unpackage (if any): x ./box.ovf x ./Vagrantfile

springboot添加ojdbc6报错

springboot一般添加ojdbc6数据库驱动会报错,依赖无法添加.原因ojdbc6数据库驱动是收费的,无法通过maven直接进行下载,需要手动下载ojdbc6.jar,把其手动添加到自己的仓库里面 第一步下载ojdbc6的jar包 下载的地址 https://mvnrepository.com/artifact/com.oracle/ojdbc6/11.2.0.3 选择jar将其下载下来 第二步将自己下载下来的jar重命名ojdbc6放到c盘用户的目录下 第三步这个目录打开cmd窗口 执行

SQL查询字段添加括号报错:Operand should contain 1 column(s)

SQL语句:查询连个字段的信息 SELECT (menu_id,menu_captions) FROM bsdb.menulist a WHERE a.menu_id like ('2_'); 然后,因为这是在存储过程中的一个语句所以,在执行存储过程的时候编译不会报错,但是执行的时候却汇报错:Operand should contain 1 column(s):原因不好解释: 下面是官方发解释(MYSQL):https://dev.mysql.com/doc/refman/5.0/en/row-

VS2017 添加引用报错问题

来到新公司,还没来得及吐槽笔记本到台式机的落差,就开始吭哧吭哧的装环境.装好vs2017后,写helloWorld在添加引用时报错 "找不到 Microsoft.VisualStudio.Shell.Interop.IVsReferenceManager 服务的实例" 不知道是不是安装时候的问题,网上找到了一个方法,亲试可行 打开vs2017目录下的 Developer Command Prompt for VS 2017 定位到vs2017安装目录下的 /Common7/IDE/Pu