2013-06-13 88 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]; 
    

我仍傾向於使用標籤的高度解決方案,固定值。