我試圖讓我的多行UILabel
儘可能小與給定的最大寬度,但sizeToFit()
和sizeThatFits(_,_)
方法沒有給出我想要的結果。如何讓UILabel更好地調整大小?
看看這個圖像: 紅色矩形表示我通過在sizeThatFits
(而高度爲最大)的寬度。顯然,正如你所看到的,這個方法實際上會返回的大小,它適合於,但它並沒有給我可能的最小尺寸,這是我想要的。
比方說,我指定max-width: 300
。這個實際結果給我一個大小約。 280*50
。 正如你可以在圖片中看到,文現在這樣寫的:
Here is some text that is supposed to
align nicely
我想實現的是:
Here is some text that is
supposed to align nicely
這一結果將有同樣的高度,但一個更小的寬度,如200*50
我知道這很難界定「最小尺寸可能」,因爲它可能返回此:
Here
is
some
text
that
...
甚至每行只有一個字母。但鑑於sizeThatFits
返回這個,給定的寬度和高度,爲什麼它不會返回我想要的結果,這是相同的高度,但與較小的寬度。爲什麼不是最小的適合返回?這樣的功能是否存在?
你試過label.minimumScaleFactor = 0.7或0.8嗎? –
我認爲你需要設置textAlignment到中心 –
@RahulVyas'MinimumScaleFactor'與此無關。不,我不希望文字對齊中心。即使我使用'textAlignment = .Center',它也會在同一個地方打斷這個句子,使得文本'很好地對齊',就可以獨立在下一行。 – Sti