【iOS开发】在UILabel中同时显示图片和文字,"混排"。
2016-10-27 17:29
465 查看
一、 用户场景:
实现微信、QQ的聊天对话框中,文字和表情同时存在功能,即图文混排。
二、思路描述:
(1) 使用富文本方法
UILabel有text这个文本属性,要做到富文本效果,就需要用到一个并不是所有人都知道的富文本属性 attributedText(textView、textField中都有这个属性)。
(2)代码实现:
// 创建UILabel控件 UILabel *lab = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 300, 60)]; lab.center = self.view.center; lab.backgroundColor = [UIColor orangeColor]; // 1.创建一个富文本 NSMutableAttributedString *attri = [[NSMutableAttributedString alloc] initWithString:@"嘿嘿嘿嘿嘿123456789"]; // 修改富文本中的不同文字的样式 [attri addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:NSMakeRange(0, 5)]; [attri addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:20] range:NSMakeRange(0, 5)]; // 设置数字为红色 [attri addAttribute:NSForegroundColorAttributeName value:[UIColor redColor] range:NSMakeRange(5, 9)]; [attri addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:30] range:NSMakeRange(5, 9)]; // 2.添加表情图片 NSTextAttachment *attch = [[NSTextAttachment alloc] init]; // 表情图片 attch.image = [UIImage imageNamed:@"023[困]@2x.png"]; // 设置图片大小 attch.bounds = CGRectMake(0, 0, 32, 32); // 创建带有图片的富文本 NSAttributedString *string = [NSAttributedString attributedStringWithAttachment:attch]; [attri insertAttributedString:string atIndex:3];// 插入某个位置 // 用label的attributedText属性来使用富文本 lab.attributedText = attri; [self.view addSubview:lab];
三、 效果图:
Demo下载地址:Demo_AttributedLable
相关文章推荐
- iOS开发小技巧--即时通讯项目:使用富文本在UILabel中显示图片和文字;使用富文本占位显示图片
- ios开发中封装button同时显示图片和文字
- iOS开发证书显示"此证书的签发者无效"解决方法
- 使用mmit进行移动开发,如何在一行同时显示图片和文字.
- IOS开发之UIButton同时设置图片文字以及出发按钮时文字图片的切换
- ios开发设置navigationBar中显示成自定义图片同时不让push进去的子视图显示父视图中的图片
- IOS开发之UIButton同时设置图片文字以及触发按钮时文字图片的切换
- iOS中在UIButton上同时显示文字和图片
- iOS开发笔记[17/50]:导航栏里的"Back"按钮显示不出来
- IOS开发之UIButton同时设置图片文字以及出发按钮时文字图片的切换
- IOS 开发 证书显示 "此证书签发者无效" 解决办法
- iOS 开发中tabBarItem不显示文字,只显示图片,且图片居中显示
- IOS总结实现UIButton的图文混排 同时显示文字和图片
- ios 开发中,如何设置 uitabbar 里面 tabbaritem 不显示文字,只显示图片,图片垂直居中?
- ios开发如何让navigationItem自带的返回按钮设置成图片或者不显示文字
- SDL游戏开发教程05(显示文字和其他格式的图片)
- iOS开发笔记--UILabel显示不同的字体和颜色
- iOS界面开发:xib添加了UIImageView在iOS6显示不了图片的问题
- Devexpress 中aspxhyperlink 同时显示图片和文字
- UIButton上同时显示图片和文字的方法