AutoLayout – 保持图像水平约束的比例(Swift Xcode 6)
我一直在试图实现图片的时间轴(如Instagram或Facebook)。 但是,我一直在努力与图像的比例。
这是我的xib包含我的单元格:
我希望图片保持其比例,并完全填充单元格的宽度。 我已经在UIImageView上设置了4个自动布局约束,水平约束为0-0,顶部/底部约束为5-5。 我也将ViewMode设置为“Aspect Fit”。
我试过不同的设置:
- 将UIImageView的高度设置为特定值: – >修改图像的宽度以保持图像比例
- 不要设置UIImageView的高度 – >它认为高度等于0,因此甚至不显示图像
- 设置高度大于或等于特定值: – >与1相同的行为(图像宽度被修改以保持图像比例)
我从URL加载图像,所以我一直在使用lib Haneke( https://github.com/Haneke/HanekeSwift )与以下函数:imageView.hnk_setImageFromURL(url)。
它有一个图像自动resize,我不知道如何获得图像的原始宽度/高度手动设置高度。
再次,我想要的是图片保持其比例,并完全填满单元格的宽度。
任何人有一个build议?
非常感谢 !
这是我想出的设置。 这是一个快速和肮脏的演示,但我会假设你想图像总是居中。 您可以在故事板中设置水平和垂直居中约束,以始终保持居中如果您希望它始终完全填充视图,您可以用Equal Width
replaceEqual Height
,但是通过这样做,imageView将在某些尺寸因为宽高比的限制
我还包括了不同大小的视图截图
- 自动布局iOS 11工具栏与customView的UIBarButtonItem
- 使用AutoLayout在不同高度的两列中堆叠
- animation时无法同时满足约束条件
- 在UITableViewCell的子视图上设置遮罩层将覆盖自动布局约束
- UIScrollView无法使用自动布局放大iOS7
- 多行UILabel与UIScrollview使用自动布局
- iOS 8 AutoLayout滚动视图在iPhone 6 plus上水平滚动
- 如何将宽度等同于NSLayoutConstraint的某些UIViews?
- 当我将UIPanGestureRecognizer和自动布局结合在一起时,我的UIViews变得糟糕透顶