我觉得这对你们退伍军人来说是一个垒球,但我在调整 UIImageView 的 subview 大小时遇到了很多麻烦......这是我得到的:
var myImageView:UIImageView!
var tmpView:UIImageView!
myImageView 是我的“主”UIImageView,我将 tmpView 视为 subview ...现在我已经尝试过启用和不启用自动布局,但我已经设置了 myImageView 的约束。 myImageView 占据整个屏幕。我通过设置 myImageView.image = UIImage... 等确认了这一点。
这是我初始化图像并将其添加到 subview 的代码:
self.tmpView.image = UIImage(named: "myImage.png")
self.tmpView.frame = CGRect(x: 0, y: 0, width: 200, height: 300)
self.imageView2.addSubview(self.tmpView)
现在我遇到了问题 - 无论我将 tmpView 的高度和宽度设置为多少,大小都不会改变。但有趣的是,更改 x,y 确实会对 subview 的位置产生影响。
这是我的问题:1)为什么x和y都很好地服从,但宽度和高度却不然?
2) 如何解决这个问题,最好是通过编程方式还是通过 Storyboard 来解决?
最佳答案
使用自动布局时不应再直接修改框架。向 tmpView
添加宽度和高度约束,如果您使用 IB,则为它们创建导出(导出应具有 NSLayoutContraint
类型)。
您还可以在代码中创建约束,但除非必须这样做,否则没有意义。
在这两种情况下,要调整 tmpView
的大小,请将每个约束的 constant
属性更改为您想要的值。
widthConstraint.constant = yourNewWidth;
heightConstraint.constant = yourNewHeight;
关于ios - swift - 我很笨,我的 subview 不会服从并正确调整自身大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31094722/