2011-05-18 37 views
13

我使用的財產minimumFontSize的UITextField最小字號

textField.font = [UIFont boldSystemFontOfSize:17]; 
textField.textColor = [UIColor darkGrayColor]; 
textField.minimumFontSize = 10; 
textField.adjustsFontSizeToFitWidth = YES; 

但文字從來就沒有到10最小字體大小,它被截斷,但如果我改變當前fontSize的10,顯示整個文本正確。我使用這個屬性是否錯誤?

回答

0

字體將被截斷,直到最小字體大小。要嘗試這一點,請在Interface Builder中拖動一個UILabel,在其中設置屬性並更改UILabel的寬度以查看效果。

+0

但是你正在使用正確的屬性,因爲我理解它。 – 2011-05-18 13:12:37

+0

是的,這是預期的效果,但我在UITableViewCell中有一個UITextField,文本永遠不會達到最小尺寸。我可以看到文字越小越好,但不足以達到最小尺寸 – John 2011-05-18 13:14:37

+0

它應該這樣做。你把它正確地連接起來了嗎?或者你可以嘗試在IB中設置它。 – 2011-05-18 14:04:03

15

遲到了......您正確設置了UITextField,並且adjustsFontSizeToFitWidth確實能夠正常工作,但是我相信iOS正處於隱身狀態。

它出現在一個UITextField文本將不會自動縮小到14分* - 不管你設置minimumFontSize以低於該值,如10點您的合理要求。

一個UITextField有:

  • 字體大小的17,最小尺寸15會下降到15,如果需要的話
  • 字體大小的17,最小尺寸的10只下降至14
  • 字體大小13,最小大小4將停留在13

您可以通過比較三個UITextField並排與太長的文本字符串進行測試,其中最小字體大小分別爲13,14和15。前兩個將出現完全相同的14點。

這似乎是一個奇怪的數字,但你去了。鐵腕可讀性考慮因素?我想你可以嘗試adjusting the font size yourself或與minimumFontSize = 14住在一起。

*我在IB中對此進行了驗證,但它肯定會應用於以編程方式創建的UITextField s。