UILabel UIButton 的文本样式显示
2016-09-06 16:50
204 查看
实例化方法和使用方法
实例化方法:
使用字符串初始化
- (id)initWithString:(NSString *)str;
例:
NSMutableAttributedString *AttributedStr = [[NSMutableAttributedStringalloc]initWithString:@"今天天气不错呀"];
- (id)initWithString:(NSString *)str attributes:(NSDictionary *)attrs;
字典中存放一些属性名和属性值,如:
NSDictionary *attributeDict = [NSDictionarydictionaryWithObjectsAndKeys:
[UIFontsystemFontOfSize:15.0],NSFontAttributeName,
[UIColorredColor],NSForegroundColorAttributeName,
NSUnderlineStyleAttributeName,NSUnderlineStyleSingle,nil];
NSMutableAttributedString *AttributedStr = [[NSMutableAttributedStringalloc]initWithString:@"今天天气不错呀" attributes:attributeDict];
- (id)initWithAttributedString:(NSAttributedString *)attester;
使用NSAttributedString初始化,跟NSMutableString,NSString类似
使用方法:
为某一范围内文字设置多个属性
- (void)setAttributes:(NSDictionary *)attrs range:(NSRange)range;
为某一范围内文字添加某个属性
- (void)addAttribute:(NSString *)name value:(id)value range:(NSRange)range;
为某一范围内文字添加多个属性
- (void)addAttributes:(NSDictionary *)attrs range:(NSRange)range;
移除某范围内的某个属性
- (void)removeAttribute:(NSString *)name range:(NSRange)range;
常见的属性及说明
NSFontAttributeName 字体
NSParagraphStyleAttributeName 段落格式
NSForegroundColorAttributeName 字体颜色
NSBackgroundColorAttributeName 背景颜色
NSStrikethroughStyleAttributeName 删除线格式
NSUnderlineStyleAttributeName 下划线格式
NSStrokeColorAttributeName 删除线颜色
NSStrokeWidthAttributeName 删除线宽度
NSShadowAttributeName 阴影
2.实例设置文本的属性
//从网络获取的数组中拿到字典
NSDictionary *dataDic = @{@"Position":@"苏州",
@"TrueName":@"苏州***信息科技有限公司"};
//变换字体大小及颜色positionstr拼接设置一定的格式如(),{},[]……
NSString *positionStr = [NSString stringWithFormat:@"(%@)",dataDic[@"Position"]];
NSString *str = [NSString stringWithFormat:@"%@%@",dataDic[@"TrueName"],positionStr];
//初始化
NSMutableAttributedString *mutableStr = [[NSMutableAttributedString alloc]initWithString:str];
//限定范围
NSRange trueNameRange = [str rangeOfString:dataDic[@"TrueName"]];
NSRange positionRange = [str rangeOfString:positionStr];
//设置范围属性
[mutableStr addAttribute:NSForegroundColorAttributeName value:[UIColor blackColor]
range:trueNameRange];
[mutableStr addAttribute:NSForegroundColorAttributeName value:[UIColor lightGrayColor]
range:positionRange];
[mutableStr addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"HelveticaNeue-Bold"size:16]
range:trueNameRange];
[mutableStr addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"HelveticaNeue-Bold"size:13]
range:positionRange];
//取出获得的数据,直接给label
nameLabel.attributedText = mutableStr;
具体的效果图,可以自己测试之后看到
实例化方法:
使用字符串初始化
- (id)initWithString:(NSString *)str;
例:
NSMutableAttributedString *AttributedStr = [[NSMutableAttributedStringalloc]initWithString:@"今天天气不错呀"];
- (id)initWithString:(NSString *)str attributes:(NSDictionary *)attrs;
字典中存放一些属性名和属性值,如:
NSDictionary *attributeDict = [NSDictionarydictionaryWithObjectsAndKeys:
[UIFontsystemFontOfSize:15.0],NSFontAttributeName,
[UIColorredColor],NSForegroundColorAttributeName,
NSUnderlineStyleAttributeName,NSUnderlineStyleSingle,nil];
NSMutableAttributedString *AttributedStr = [[NSMutableAttributedStringalloc]initWithString:@"今天天气不错呀" attributes:attributeDict];
- (id)initWithAttributedString:(NSAttributedString *)attester;
使用NSAttributedString初始化,跟NSMutableString,NSString类似
使用方法:
为某一范围内文字设置多个属性
- (void)setAttributes:(NSDictionary *)attrs range:(NSRange)range;
为某一范围内文字添加某个属性
- (void)addAttribute:(NSString *)name value:(id)value range:(NSRange)range;
为某一范围内文字添加多个属性
- (void)addAttributes:(NSDictionary *)attrs range:(NSRange)range;
移除某范围内的某个属性
- (void)removeAttribute:(NSString *)name range:(NSRange)range;
常见的属性及说明
NSFontAttributeName 字体
NSParagraphStyleAttributeName 段落格式
NSForegroundColorAttributeName 字体颜色
NSBackgroundColorAttributeName 背景颜色
NSStrikethroughStyleAttributeName 删除线格式
NSUnderlineStyleAttributeName 下划线格式
NSStrokeColorAttributeName 删除线颜色
NSStrokeWidthAttributeName 删除线宽度
NSShadowAttributeName 阴影
2.实例设置文本的属性
//从网络获取的数组中拿到字典
NSDictionary *dataDic = @{@"Position":@"苏州",
@"TrueName":@"苏州***信息科技有限公司"};
//变换字体大小及颜色positionstr拼接设置一定的格式如(),{},[]……
NSString *positionStr = [NSString stringWithFormat:@"(%@)",dataDic[@"Position"]];
NSString *str = [NSString stringWithFormat:@"%@%@",dataDic[@"TrueName"],positionStr];
//初始化
NSMutableAttributedString *mutableStr = [[NSMutableAttributedString alloc]initWithString:str];
//限定范围
NSRange trueNameRange = [str rangeOfString:dataDic[@"TrueName"]];
NSRange positionRange = [str rangeOfString:positionStr];
//设置范围属性
[mutableStr addAttribute:NSForegroundColorAttributeName value:[UIColor blackColor]
range:trueNameRange];
[mutableStr addAttribute:NSForegroundColorAttributeName value:[UIColor lightGrayColor]
range:positionRange];
[mutableStr addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"HelveticaNeue-Bold"size:16]
range:trueNameRange];
[mutableStr addAttribute:NSFontAttributeName value:[UIFont fontWithName:@"HelveticaNeue-Bold"size:13]
range:positionRange];
//取出获得的数据,直接给label
nameLabel.attributedText = mutableStr;
具体的效果图,可以自己测试之后看到
相关文章推荐
- iOS UILabel利用NSMutableString显示不同样式的文字(富文本)
- UILabel 中文本的多样式显示
- css应用表格排版td中的文本过长,设置不换行,随内容同行显示样式
- UILabel显示富文本
- iOS UILabel 展示不下,显示 xxx... 时,获取容纳字符文本真正的宽度
- iOS UILabel网址识别添加点击事件及以富文本形式显示
- iPhone开发之显示指定格式的文本自动改变UIlabel高度的自定义分类—— 方便好用
- iOS UILabel、UIButton文字竖排显示
- iOS 运用富文本在UILabel上显示图片
- iOS UILabel显示HTML文本
- asp直显示纯文本,过滤掉样式
- Android SpannableString(显示多样式文本)
- 使文本显示省略号的样式
- UILabel多行并根据高度动态显示文本
- 从零开始前端学习[11]:控制文本显示的样式属性
- 一个TextView显示多种文本样式
- 用删除线样式显示被删除的文本
- 小样式记录-显示省略符号来代表被修剪的文本。
- CSS基础:text-overflow:ellipsis溢出文本的显示样式
- IOS - 富文本实现在UILabel中显示图片