之前使用了nsstring類的sizewithfont:constrainedtosize:linebreakmode:方法,但是該方法已經被ios7 deprecated了,而ios7新出了乙個boudingrectwithsize:options:attributes:context方法來代替。
而具體怎麼使用呢,尤其那個attribute
nsdictionary *attribute = @;
cgsize size = [@「相關nsstring」 boundingrectwithsize:cgsizemake(100, 0) options: nsstringdrawingtruncateslastvisibleline | nsstringdrawinguseslinefragmentorigin | nsstringdrawingusesfontleading attributes:attribute context:nil].size;
個人總結:
– sizewithfont:forwidth:linebreakmode: 將字串放入指定寬度,如果不夠,就依據換行方式截斷字串,返回其大小。
– sizewithfont:minfontsize:actualfontsize:forwidth:linebreakmode:將字串放入限定寬度內,不足,就縮小字型,直至放下,返回此時的字串大小和字型大小;縮小到最小還不能放下,就截斷字串,返回其大小和字型大小。設定高度沒有什麼意義,因為高度值再大也只能顯示一行,再小也要顯示一行。
– sizewithfont:constrainedtosize:linebreakmode:用於多行,指定限制,換行方式,字型大小。限制大小的寬度值和換行方式影響換行,進而影響結果的高度值。限制大小的高度值會影響內容顯示的多少,大於實際所需,沒影響;小於的話,字串只能顯示一部分,直至只能顯示一行.
以下為參考文獻:ios學習:uilabel和sizewithfont方法
[cpp]view plain
copy
- (void
)viewdidload
-(void
)test
sizeWithFont 方法使用明細
sizewithfont forwidth linebreakmode 將字串放入指定寬度,如果不夠,就依據換行方式截斷字串,返回其大小。sizewithfont minfontsize actualfontsize forwidth linebreakmode 將字串放入限定寬度內,不足,就縮小字...
sizeWithFont 方法使用明細
之前使用了nsstring類的sizewithfont constrainedtosize linebreakmode 方法,但是該方法已經被ios7 deprecated了,而ios7新出了乙個boudingrectwithsize options attributes context方法來代替。...
sizeWithFont 方法使用明細
sizewithfont forwidth linebreakmode 將字串放入指定寬度,如果不夠,就依據換行方式截斷字串,返回其大小。sizewithfont minfontsize actualfontsize forwidth linebreakmode 將字串放入限定寬度內,不足,就縮小字...