2014-05-14 21 views
2

我有一個UIImageView和一個UILabel,一個坐在一個固定的間距旁邊(比如說10pt)。 UILabel's寬度可能會動態變化。是否可以將它們水平居中對齊如下?Xcode 5:如何在IB中使用Autolayout水平對齊2對象?

| @ Abc | 
|    | 
|    | 

| @ Abcde | 
|    | 
|    | 
+0

哪一種標籤? ImageView的?你可以把清晰的圖像 –

+0

「@」是imageView,「Abc」是標籤。 *標籤的文字可能會更改。 – Andre

回答

3

將它們兩者在視圖中是這樣的:

|<-- center view -->| 
| ________________ | 
| |  View  | | 
| |_______ ______| | 
| | Image | | Label| | 
| |_______| |______| | 
| |________________| | 
|     | 

然後居中視圖水平。在視圖中,您需要爲imageview和標籤定義約束,以便它們定義視圖的高度和寬度。

編輯 這裏是展示它的工作原理兩個圖像:

Short text http://s1.directupload.net/images/140514/rqtiq2ip.png Longer text http://s14.directupload.net/images/140514/oqjth9tn.png

+0

謝謝Jens,但我真的是,imageView的左邊距和標籤的右邊距應該在相同的距離。 – Andre

+0

是的,您可以將imageview設置爲從包含視圖和標籤距離包含視圖的距離爲0的距離處具有0個前導距離。視圖將始終居中 - 因此視圖的距離應該與兩側相同,並且由於imageview和標籤正好位於視圖的邊緣,因此它們也將具有相同的距離... – Jens

+0

是的,它的確有用將它們居中,但圖像和標籤被拉開。我試圖調整優先級,但沒有運氣。 – Andre

0

將UILabel的文本對齊設置爲居中。然後將其移動到視圖的中心,以便在UILabel的中心出現一條指引線。 對不起,小姐明白你的意思, 正在更新... 通過按住命令鍵選擇標籤和圖像,然後移動它們以對齊到中心guid行。

+0

你認爲這將工作,沒有添加任何限制 –

+0

以及...這是靜態的。我的意思是這就像一個詳細的viewController,其中「Abc」是頁面的標題。標題旁邊總是有一個圖標。所以標題會有所不同。 – Andre

+0

@Andre由於標籤文本會改變它的長度,因此除非您計算標籤長度並通過代碼進行調整,否則很難始終將圖像和標籤居中放置在同一時間。但是您可以只將標籤居中放置並將圖像放在標籤的固定左側位置。 – highwing