ios7之前計算字串長寬的方法是:
- (cgsize)sizewithfont:(uifont *)font constrainedtosize:(cgsize)size linebreakmode:(nslinebreakmode)linebreakmode ns_deprecated_ios(2_0, 7_0, "use -boundingrectwithsize:options:attributes:context:") __tvos_prohibited; // nstextalignment is not needed to determine size
不過在ios7之後就過時了,有新的方法替換它。
下面是把ios7的新方法封裝成uilabel的類目以方便實用:
標頭檔案:
//
// nsstring+framesize.h
// xcode7test
//// created by 於建祥 on 16/9/13.
//#import @inte***ce nsstring (framesize)
- (cgsize)boundingrectwithsize:(cgsize)size andfont:(uifont *)font;
@end
實現檔案:
//
// nsstring+framesize.m
// xcode7test
//// created by 於建祥 on 16/9/13.
//#import "nsstring+framesize.h"
@implementation nsstring (framesize)
- (cgsize)boundingrectwithsize:(cgsize)size andfont:(uifont *)font
;
cgsize retsize = [self boundingrectwithsize:size
options:\
nsstringdrawingtruncateslastvisibleline |
nsstringdrawinguseslinefragmentorigin |
nsstringdrawingusesfontleading
attributes:attribute
context:nil].size;
return retsize;
}@end
使用時:
cgsize
strsize = [str
boundingrectwithsize
:cgsizemake
(200
, nsintegermax
) andfont
:[uifont
systemfontofsize:14
]];
label.
frame
= cgrectmake(10
, 20
, strsize.
width
, strsize.
height);
計算字串高度 iOS
公共類.h裡 返回自適應高度的文字 cgsize sizewithstring nsstring string font cgfloat font maxwidth cgfloat maxwidth 返回自適應寬度的文字 cgsize sizewithstring nsstring string f...
iOS根據字串計算UITextView高度
ios計算字串高度,有需要的朋友可以參考下。方法一 ios7.0之前適用 method 獲取指定寬度width,字型大小fontsize,字串value的高度 param value 待計算的字串 param fontsize 字型的大小 param width 限制字串顯示區域的寬度 result...
iOS依據字串計算UITextView高度
ios計算字串高度,有須要的朋友能夠參考下。方法一 ios7.0之前適用 method 獲取指定寬度width,字型大小fontsize,字串value的高度 param value 待計算的字串 param fontsize 字型的大小 param width 限制字串顯示區域的寬度 result...