2013-04-02 61 views
1

我有3個UILabel繪製在彼此頂部的故事板上。兩個其他標籤之間的垂直中心UILabel

靜態UI標籤1

動態UI標籤2

靜態UI標籤3個

標籤1和3是靜態的,不會改變。標籤2是動態的,並且總是一個句子,但可以是一個短或長的句子。我希望標籤2根據標籤1和標籤3之間的文字數量完全垂直居中。任何想法如何做到這一點?不勝感激!

+0

label2是一行嗎? –

+0

完美居中?或者你想讓它們垂直排列? – nielsbot

回答

1

如果您在使用自動佈局(這是默認開啓),那麼您可以拉伸中間標籤,直到它的頂部和底部距離其他兩個標籤的標準距離(當您達到該距離時,您會看到一條藍色虛線)。這假定你的標籤有清晰的背景,或者如果沒有,你不介意看到高標籤。無論行數如何,文本都將在此高標籤中垂直居中。它也將保持以旋轉爲中心。

+0

這聽起來不錯。我今晚會試一試,讓你知道。 –

1

添加label1和LABEL3的中心值,除以2,並使其LABEL2

CGPoint point = CGPointMake(Label2.Center.x,(Label1.center.y+Label3.center.y)/2); 
Label2.center = point; 

這一切的中心....

+0

如果你沒有結束像素對齊的幀,這會給你模糊的文本。 – nielsbot