iOS开发技巧之:UILabel设置行间距和字间距并计算高度
来源:互联网 发布:跳跃网络被告 编辑:程序博客网 时间:2024/05/30 23:43
#define UILABEL_LINE_SPACE 6
#define HEIGHT [ [ UIScreen mainScreen ] bounds ].size.height
//给UILabel设置行间距和字间距
-(void)setLabelSpace:(UILabel*)label withValue:(NSString*)str withFont:(UIFont*)font {
NSMutableParagraphStyle *paraStyle = [[NSMutableParagraphStyle alloc] init];
paraStyle.lineBreakMode = NSLineBreakByCharWrapping;
paraStyle.alignment = NSTextAlignmentLeft;
paraStyle.lineSpacing = UILABEL_LINE_SPACE; //设置行间距
paraStyle.hyphenationFactor = 1.0;
paraStyle.firstLineHeadIndent = 0.0;
paraStyle.paragraphSpacingBefore = 0.0;
paraStyle.headIndent = 0;
paraStyle.tailIndent = 0;
//设置字间距 NSKernAttributeName:@1.5f
NSDictionary *dic = @{NSFontAttributeName:font, NSParagraphStyleAttributeName:paraStyle, NSKernAttributeName:@1.5f
};
NSAttributedString *attributeStr = [[NSAttributedString alloc] initWithString:str attributes:dic];
label.attributedText = attributeStr;
}
//计算UILabel的高度(带有行间距的情况)
-(CGFloat)getSpaceLabelHeight:(NSString*)str withFont:(UIFont*)font withWidth:(CGFloat)width {
NSMutableParagraphStyle *paraStyle = [[NSMutableParagraphStyle alloc] init];
paraStyle.lineBreakMode = NSLineBreakByCharWrapping;
paraStyle.alignment = NSTextAlignmentLeft;
paraStyle.lineSpacing = UILABEL_LINE_SPACE;
paraStyle.hyphenationFactor = 1.0;
paraStyle.firstLineHeadIndent = 0.0;
paraStyle.paragraphSpacingBefore = 0.0;
paraStyle.headIndent = 0;
paraStyle.tailIndent = 0;
NSDictionary *dic = @{NSFontAttributeName:font, NSParagraphStyleAttributeName:paraStyle, NSKernAttributeName:@1.5f
};
CGSize size = [str boundingRectWithSize:CGSizeMake(width, HEIGHT) options:NSStringDrawingUsesLineFragmentOrigin attributes:dic context:nil].size;
return size.height;
}
原文链接:http://blog.csdn.net/luco2008/article/details/50977718
- iOS开发技巧之:UILabel设置行间距和字间距并计算高度
- iOS UILabel设置行间距和字间距并计算高度
- iOS UILabel设置行间距和字间距并计算高度
- iOS UILabel设置行间距和字间距并计算高度
- iOS UILabel设置行间距和字间距并计算高度
- iOS UILabel设置行间距和字间距并计算高度
- iOS UILabel设置行间距和字间距并计算高度
- iOS UILabel 设置 行间距 和 字间距 并计算高度
- iOS UILabel设置行间距和字间距并计算高度
- iOS UILabel设置行间距和字间距并计算高度
- iOS UILabel设置行间距和字间距并计算高度
- iOS开发1-UILabel设置行间距和字间距
- iOS - UILabel根据文字计算高度,设置字间距,行间距
- UILabel设置行间距和字间距
- iOS开发小知识之改变UIlabel的行间距和字间距
- iOS开发小知识之改变UIlabel的行间距和字间距
- iOS设置UILabel的行间距并自适应高度
- iOS 设置UILabel的行间距并自适应高度
- Java基础之网络编程
- js控制div隐藏显示
- 安全
- JAVA 获取实时汇率
- 删除指定时间之前的文件
- iOS开发技巧之:UILabel设置行间距和字间距并计算高度
- kubernetes 伸缩扩展
- skynet socketserver
- 单元测试JUNIT
- 深入理解Hadoop集群和网络
- bzoj 4727 [POI2017]Turysta 竞赛图
- EasyUI Ifrem弹出框问题
- bzoj1823(2 sat)
- Linux操作系统下如何制作Image映像文件