为了账号安全,请及时绑定邮箱和手机立即绑定

请问UIScrollView不使用autolayout约束

请问UIScrollView不使用autolayout约束

iOS
一只斗牛犬 2019-08-02 07:02:46
UIScrollView不使用autolayout约束我在后面有一个滚动视图和一个图像视图,我正在用nib填充它。我用的是自动收费表。在这两个视图中,我都有一个底部空间到SuperView,还有一个到SuperView的顶部空间。图像视图实现了我想要它做的事情。对于iPhone 5,它是我想要的地方。而对于其他iPhone,它保持在屏幕底部上方,因此它的大小是正确的。滚动视图在iPhone 5上看起来是对的,但在其他手机上它没有调整大小,所以它向下滚动到应用程序的视图下方。我在日志中得到了这些信息: 2012-11-21 10:42:38.576 LCHApp[12604:907] Unable to simultaneously satisfy constraints.Probably at least one of the constraints in the following list is one you don't want.    Try this: (1) look at each constraint and try to figure out which you don't expect;   (2) find the code that added the unwanted constraint or constraints and fix it.  (Note: If you're seeing NSAutoresizingMaskLayoutConstraints that you don't understand, refer   to the documentation for the UIView property translatesAutoresizingMaskIntoConstraints) "<NSLayoutConstraint:0x1d8ea080 UIScrollView:0x1d8413b0.bottom == UIImageView:0x1d892110.bottom>","<NSAutoresizingMaskLayoutConstraint:0x1d8cca10 h=-&- v=-&- ScheduleViewNib:0x1d853630.height == UIScrollView:0x1d8413b0.height - 386>","<NSLayoutConstraint:0x1d8e5340 V:[UIImageView:0x1d892110]-(64)-|   (Names: '|':ScheduleView:0x1d8efc30 )>","<NSAutoresizingMaskLayoutConstraint:0x1d8cf520 h=--& v=--& V:[ScheduleView:0x1d8efc30(480)]>","<NSLayoutConstraint:0x1d8eaed0 V:|-(45)-[UIScrollView:0x1d8413b0]   (Names: '|':ScheduleView:0x1d8efc30 )>"  Will attempt to recover by breaking constraint   <NSLayoutConstraint:0x1d8ea080 UIScrollView:0x1d8413b0.bottom ==      UIImageView:0x1d892110.bottom>我已经试过了[self setTranslatesAutoresizingMaskIntoConstraints:YES];和[self.myScrollView setTranslatesAutoresizingMaskIntoConstraints:YES];从我所能看到的情况来看,这只是去掉了视图中的所有约束。也不是我想要的
查看完整描述

3 回答

?
慕丝7291255

TA贡献1859条经验 获得超6个赞

在使用自动布局时非常重要:您必须将最后一个子视图的右边和/或底部钉在滚动视图的右侧和/或底部。滚动视图就是这样知道内容大小的。例如:

[scrollView addConstraint:[NSLayoutConstraint constraintWithItem:lastSubView
                                                 attribute:NSLayoutAttributeRight
                                                 relatedBy:NSLayoutRelationEqual
                                                    toItem:scrollView
                                                 attribute:NSLayoutAttributeRight
                                                multiplier:1.0
                                                  constant:0]];

我感谢本站提供了完美的例子。

因为这个,我浪费了很多时间,我希望能让别人省去我的痛苦。



查看完整回答
反对 回复 2019-08-03
?
慕斯709654

TA贡献1840条经验 获得超5个赞

为了使UIScrollview能够很好地处理约束,我使用了以下方法这里..在这个答案中,我讨论了如何获得一个垂直滚动视图工作,也适用于设备旋转。您可以调整使用的方法。水平方向滚动视图。对于在两个方向滚动的滚动视图,添加尺寸匹配宽度约束技巧。但是其他的事情都是一样的。




查看完整回答
反对 回复 2019-08-03
  • 3 回答
  • 0 关注
  • 406 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信