2013-06-13 140 views
0

我试图使用编程视觉约束来显示一个标签和一个按钮旁边的另一个。但是,用作按钮背景的UIImageView正在使按钮的固有尺寸太大。UIImageView和代码中的自动布局

我试图添加一个约束,强制按钮的高度匹配标签的高度。但我只是得到了一个超级高的标签,而不是一个更小的按钮。

  1. 如何设置的约束,使得按钮高度为相同的高度,在标签(和不反之亦然)
  2. 按钮应该保持图像的原始长宽比 - 其宽度也应该符合自身的高度(也许这免费的午餐?)

回答

0

下面的作品是:

  1. 设置的宽度在视觉布局按钮:@"|-[titleLabel][refreshButton(==26)]"
  2. 添加的约束使得按钮的高度等于它自己(现明确)宽度:代替

    NSLayoutConstraint *constraint = [NSLayoutConstraint constraintWithItem:refreshButton 
                       attribute:NSLayoutAttributeHeight 
                       relatedBy:NSLayoutRelationEqual 
                       toItem:refreshButton 
                       attribute:NSLayoutAttributeWidth 
                      multiplier:1.0f 
                       constant:0.0f]; 
    

我仍倾向于使用标签的高度解决方案,固定值。