代码中的 UIImageView 和自动布局
Posted
技术标签:
【中文标题】代码中的 UIImageView 和自动布局【英文标题】:UIImageView and Auto Layout in Code 【发布时间】:2013-06-13 03:25:34 【问题描述】:我正在尝试使用编程视觉约束来显示一个标签和一个按钮。但是,用作按钮背景的UIImageView
使按钮的固有大小太大。
我试图添加一个约束,强制按钮的高度与标签的高度相匹配。但我只是得到了一个超高的标签,而不是一个较小的按钮。
-
如何设置约束,以使按钮高度与标签高度相同(反之亦然)
按钮应保持图像的原始纵横比 - 其宽度也应与其自身高度匹配(也许这是免费提供的?)
【问题讨论】:
【参考方案1】:以下适用于此:
-
为视觉布局中的按钮设置宽度:
@"|-[titleLabel][refreshButton(==26)]"
添加一个约束,使按钮的高度等于它自己的(现在明确的)宽度:
NSLayoutConstraint *constraint = [NSLayoutConstraint constraintWithItem:refreshButton
attribute:NSLayoutAttributeHeight
relatedBy:NSLayoutRelationEqual
toItem:refreshButton
attribute:NSLayoutAttributeWidth
multiplier:1.0f
constant:0.0f];
我仍然更喜欢使用标签高度而不是固定值的解决方案。
【讨论】:
以上是关于代码中的 UIImageView 和自动布局的主要内容,如果未能解决你的问题,请参考以下文章
Stackview中的iOS 10方形UIIMageView在隐藏时会破坏自动布局
为啥更改 UIImageView 内容模式会影响其在 Xcode6 中的自动布局?
iOS7 上 UICollectionViewCell 中的 UIImageView 自动布局问题,但在 iOS8 上没问题