ios 自适应高度
2016-01-05 18:01
453 查看
正常
+ (CGFloat)getLabelHightWithtextSize:(CGFloat)textFont labelWidth:(CGFloat)labelWidth labelText:(NSString *)labelText
{
// 高度随便写, 要求尽量写大一点
CGSize size = CGSizeMake(labelWidth, 20000);
// 字典里, 传入字号的大小
NSDictionary *dic = [NSDictionary dictionaryWithObject:[UIFont systemFontOfSize:textFont] forKey:NSFontAttributeName];
CGRect frame = [labelText boundingRectWithSize:size options:NSStringDrawingUsesLineFragmentOrigin attributes:dic context:nil];
return frame.size.height;
}
带格式的字符串
+ (CGFloat)heightWithContent:(NSString *)content
{
NSMutableParagraphStyle* style = [[NSMutableParagraphStyle
alloc]
init];
style.lineSpacing =
3;
style.paragraphSpacing =
5;
NSAttributedString* string = [[NSAttributedString
alloc]
initWithString:content?:@""
attributes:@{NSParagraphStyleAttributeName:style,
NSFontAttributeName:[UIFont
systemFontOfSize:13]}];
CGSize size =
CGSizeMake(CGRectGetWidth([UIScreen
mainScreen].bounds) -
30,
1000);
size = [string boundingRectWithSize:size
options:NSStringDrawingUsesLineFragmentOrigin |
NSStringDrawingUsesFontLeading context:nil].size;
return size.height +
37.5;
}
+ (CGFloat)getLabelHightWithtextSize:(CGFloat)textFont labelWidth:(CGFloat)labelWidth labelText:(NSString *)labelText
{
// 高度随便写, 要求尽量写大一点
CGSize size = CGSizeMake(labelWidth, 20000);
// 字典里, 传入字号的大小
NSDictionary *dic = [NSDictionary dictionaryWithObject:[UIFont systemFontOfSize:textFont] forKey:NSFontAttributeName];
CGRect frame = [labelText boundingRectWithSize:size options:NSStringDrawingUsesLineFragmentOrigin attributes:dic context:nil];
return frame.size.height;
}
带格式的字符串
+ (CGFloat)heightWithContent:(NSString *)content
{
NSMutableParagraphStyle* style = [[NSMutableParagraphStyle
alloc]
init];
style.lineSpacing =
3;
style.paragraphSpacing =
5;
NSAttributedString* string = [[NSAttributedString
alloc]
initWithString:content?:@""
attributes:@{NSParagraphStyleAttributeName:style,
NSFontAttributeName:[UIFont
systemFontOfSize:13]}];
CGSize size =
CGSizeMake(CGRectGetWidth([UIScreen
mainScreen].bounds) -
30,
1000);
size = [string boundingRectWithSize:size
options:NSStringDrawingUsesLineFragmentOrigin |
NSStringDrawingUsesFontLeading context:nil].size;
return size.height +
37.5;
}
相关文章推荐
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 不可修补的 iOS 漏洞可能导致 iPhone 4s 到 iPhone X 永久越狱
- iOS 12.4 系统遭黑客破解,漏洞危及数百万用户
- 每日安全资讯:NSO,一家专业入侵 iPhone 的神秘公司
- [转][源代码]Comex公布JailbreakMe 3.0源代码
- 基于jquery的让textarea自适应高度的插件
- 基于jquery的兼容各种浏览器的iframe自适应高度的脚本
- javascript原生和jquery库实现iframe自适应高度和宽度
- iframe自适应高度的多种方法方法小结
- 兼容多浏览器的iframe自适应高度(ie8 、谷歌浏览器4.0和 firefox3.5.3)
- 讲解iOS开发中基本的定位功能实现
- js判断客户端是iOS还是Android等移动终端的方法
- IOS开发环境windows化攻略
- 浅析iOS应用开发中线程间的通信与线程安全问题
- 检测iOS设备是否越狱的方法
- .net平台推送ios消息的实现方法
- 探讨Android与iOS,我们将何去何从?
- 使用jQuery不判断浏览器高度解决iframe自适应高度问题