Xcode 6.3.2 - iOS - 模棱两可的 UIImageView

Posted

技术标签:

【中文标题】Xcode 6.3.2 - iOS - 模棱两可的 UIImageView【英文标题】:Xcode 6.3.2 - iOS - Ambiguous UIImageView 【发布时间】:2015-07-06 04:41:37 【问题描述】:

我希望 UIImageView 根据实际图像的高度和宽度进行扩展。具体来说,我取图像的高度和宽度,然后将两者除以 ([larger value] / 300) 以保持纵横比并优化图像以适合我为其设计的空间(宽度为永远不会小于 320 并且高度始终恰好是 320)。在代码中,我为 UIImageView 提供了从该过程中获得的新高度和宽度。当在 iPhone 模拟器中查看时,所有这些都完全按照我的意图工作。但是,Xcode 警告我对 UIImageView 的约束,说“位置和大小”不明确。消除这些警告的正确方法是什么?

这是视图控制器:

http://i.imgur.com/cVWmVET.png

这是我对中间 UIImageView 的限制:

http://i.imgur.com/4orUyeh.png

【问题讨论】:

【参考方案1】:

为了保持纵横比和显示图像,您不必进行手动计算。只需设置 UIImageView 的以下属性并将图像分配给它

yourimageView.contentMode = UIViewContentModeScaleAspectFit; 

为了将 UIImageView 保持在屏幕中心,请使用以下自动布局约束

恒定高度 等宽 集装箱水平中心 容器中的垂直中心

【讨论】:

【参考方案2】:

如果您打算扩展您的 imageview,那么您必须为 Imageview 的 Content Hugging 属性赋予更大的值, 默认为 250,将其水平和垂直值设为 751,因为 750 是 Content Compression 的默认值,所以你必须给它一个更大的值。告诉我这是否有效。

【讨论】:

这似乎并没有消除警告。 约束 - 尾随前导顶部和底部,将其设置为小于或等于。因为你希望你的 imageview 比你在 nib 或 storyboard 中给它的大小增长更多。

以上是关于Xcode 6.3.2 - iOS - 模棱两可的 UIImageView的主要内容,如果未能解决你的问题,请参考以下文章

Xcode 6.3.2 iOS 8.4.1 错误消息:“无法安装开发者磁盘映像”

尝试初始化 CoreML 模型会导致模棱两可的错误消息

Xcode 6.3.2 应用程序在加载启动屏幕后崩溃

Swift 本地通知:没有更多上下文的表达式类型是模棱两可的

在没有更多上下文的情况下,表达式的类型是模棱两可的。 <SocketEngine> 类

Swift“运算符'>'的模棱两可使用”