我已经从情节提要中的UIScrollView中创建了一个UIView。
我想以编程方式将框架设置为UIView。我试图以编程方式使用setFrame函数设置框架,但是对于在UIScrollView内部的UIView不起作用。
如果我使用[[UIView alloc] initWithFrame:CGRectMake(0,0,320,110)]在UIScrollView中创建一个UIView,然后更改视图的大小,那是可行的!
我的代码:
但是我想通过IB创建uiview并使用setFrame函数设置框架。
最重要的条件是自动布局为“TRUE”。
最佳答案
最重要的条件是自动布局为“TRUE”。
如果要混合使用约束直接设置视图框架,则需要确保为视图设置view.translatesAutoresizingMaskIntoConstraints = YES
。 AFAIK,这不能在IB for iOS中完成,只能在代码中完成。
还要注意,设置translatesAutoresizingMaskIntoConstraints = YES
将为您在IB(或以编程方式)中定义的约束添加新约束,并且您必须确保它们保持一致,否则会出现异常。因此,例如,如果您在代码中设置了框架原点,但又固定了视图和 super 视图之间的最远距离,那么如果这些规范不兼容,就会遇到问题。
关于ios - 作为UIScrollView的子级,无法设置UIView的框架,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23982061/