iOS 开发富文本之TTTAttributedLabel 在某个特定位置的文字添加跳转,下划线,修改字体大小,颜色
@property(nonatomic , strong) TTTAttributedLabel * ttLabel; @property(nonatomic , strong) NSRange lineboldRange; @property(nonatomic , strong) NSRange lineboldRange1;
全局变量
_ttLabel = [[TTTAttributedLabelalloc]initWithFrame:CGRectMake(,,self.view.width-,)];
_ttLabel.numberOfLines = ;
_ttLabel.lineSpacing = ;
_ttLabel.font = [UIFontsystemFontOfSize:];
_ttLabel.textColor = [UIColorlightGrayColor];
_ttLabel.delegate = self;
//检测url
_ttLabel.enabledTextCheckingTypes=NSTextCheckingTypeLink;
//对齐方式
_ttLabel.verticalAlignment=TTTAttributedLabelVerticalAlignmentTop;
[self.viewaddSubview:_ttLabel];
NSString*tempStr =@"确定讲银行卡更换为尾号为6723的建设银行的银行卡\n同意《自动扣款协议》和《快捷支付服务协议》";
CGSizetSize = [_ttLabelsetLines: andText:tempStrMWidth:(self.view.width-)LineSpacing:];
_ttLabel.frame=CGRectMake(,,self.view.width-, tSize.height+);
[_ttLabelsetText:tempStrafterInheritingLabelAttributesAndConfiguringWithBlock:^NSMutableAttributedString*(NSMutableAttributedString*mutableAttributedString)
{
//设置可点击文字的范围
NSRangeboldRange = [[mutableAttributedStringstring]rangeOfString:@"《自动扣款协议》"options:NSCaseInsensitiveSearch];
_lineboldRange = boldRange;
NSRangeboldRange1 = [[mutableAttributedStringstring]rangeOfString:@"《快捷支付服务协议》"options:NSCaseInsensitiveSearch];
_lineboldRange1 = boldRange1;
//设定可点击文字的的大小
UIFont*boldSystemFont = [UIFontsystemFontOfSize:];
24 CTFontReffont =CTFontCreateWithName((__bridgeCFStringRef)boldSystemFont.fontName, boldSystemFont.pointSize,NULL);
if(font)
{
//设置可点击文本的大小
[mutableAttributedStringaddAttribute:(NSString*)kCTFontAttributeNamevalue:(__bridgeid)fontrange:boldRange];
[mutableAttributedStringaddAttribute:(NSString*)kCTFontAttributeNamevalue:(__bridgeid)fontrange:boldRange1];
//设置可点击文本的颜色
[mutableAttributedStringaddAttribute:(NSString*)kCTForegroundColorAttributeNamevalue:(id)[[UIColorblackColor]CGColor]range:boldRange];
[mutableAttributedStringaddAttribute:(NSString*)kCTForegroundColorAttributeNamevalue:(id)[[UIColorblackColor]CGColor]range:boldRange1];
//添加下划线
[mutableAttributedStringaddAttribute:NSUnderlineStyleAttributeNamevalue:[NSNumbernumberWithInteger:NSUnderlineStyleSingle]range:boldRange];
[mutableAttributedStringaddAttribute:NSUnderlineStyleAttributeNamevalue:[NSNumbernumberWithInteger:NSUnderlineStyleSingle]range:boldRange1];
CFRelease(font);
}
returnmutableAttributedString;
}];
NSURL*firstUrl = [NSURLURLWithString:@"http://www.baidu.com"];
NSURL*lastUrl = [NSURLURLWithString:@"http://www.xiaomi.com"];
//添加url
[_ttLabeladdLinkToURL:firstUrlwithRange:_lineboldRange];
[_ttLabeladdLinkToURL:lastUrlwithRange:_lineboldRange1];
#pragma mark ------ TTTAttributedLabelDelegate ------
- (void)attributedLabel:(TTTAttributedLabel*)label didSelectLinkWithURL:(NSURL*)ur
{
NSLog(@"打印设置的URL%@进行跳转处理",url);
}
iOS 开发富文本之TTTAttributedLabel 在某个特定位置的文字添加跳转,下划线,修改字体大小,颜色的更多相关文章
- iOS开发富文本制作 图片和文字/NSMutableParagraphStyle/NSMutableAttributedString
/NSMutableParagraphStyle/NSMutableAttributedString 组合使 NSString * titlestr=@"日产GT-R"; NSMu ...
- iOS开发富文本
NSMutableAttributedString * attributedStr = [[NSMutableAttributedString alloc] initWithString:@" ...
- iOS UILabel换行同时修改字体大小颜色
UIButton *onlyPriceBtn = [UIButton buttonWithType:UIButtonTypeCustom]; onlyPriceBtn.layer.borderColo ...
- draft.js开发富文本编辑器
写在前头的话 在react中去寻找一个好用的富文本编辑器网上很少有推荐的,搜到的也只有一些个人不成熟的作品,慢慢发现网上比较推荐的一个东东叫做draft.js. 这个东西在网上可以找到的教程也是手指头 ...
- iOS之富文本
之前做项目时遇到一个问题: 使用UITextView显示一段电影的简介,由于字数比较多,所以字体设置的很小,行间距和段间距也很小,一大段文字挤在一起看起来很别扭,想要把行间距调大,结果在XCode中查 ...
- iOS之富文本(二)
之前做项目时遇到一个问题: 使用UITextView显示一段电影的简介,由于字数比较多,所以字体设置的很小,行间距和段间距也很小,一大段文字挤在一起看起来很别扭,想要把行间距调大,结 ...
- iOS - NSMutableAttributedString富文本的实现
NSMutableAttributedString继承于NSAttributedString(带属性的字符串)能够简单快速实现富文本的效果;不多说直接上效果图和代码,通俗易懂: (一)效果图: (二) ...
- IOS开发计算文本尺寸
在IOS开发中例如微博,QQ聊天界面中要显示大量的文字信息,这样需要计算出文字部分的尺寸,才能设计出合适的控件尺寸和位置.下面是IOS 7.0计算文本尺寸的方法.- (CGRect)boundingR ...
- iOS swift 富文本显示 富文本在iOS中使用场景和解决方案
项目中很多地方都会用到富文本的内容:比如一般的商品详情,视频详情,资讯详情等,运营人员通过后台的富文本编辑器编辑的内容,前端拿到的就是一段富文本的字符串,这富文本大多都是图片和文字的组合.我们今天介绍 ...
随机推荐
- Android 5.0 5.1 webview 闪退问题
自定义webview /** * 处理Android 5.0 5.1 webview 闪退 */ class MyWebView : WebView { companion object{ priva ...
- nginx简单安装
虚拟机首先要求ping www.baidu.com 下载: 解压: 创建用户: [root@nginx ~]# useradd -M -s /sbin/nologin nginx-M 不创建加目录 ...
- MySQL_备份
Mysql 的备份 前情了解与小试 三种级别的备份与恢复数据:1.表级别备份:mysqldump [OPTIONS] database [tables]mysqldump -p密码 库名 表名 &g ...
- 项目server中设置session timeout遇到的问题
RT:在项目server中的web.xml设置session timeout=10,当10分钟后,继续右键执行jsp文件,运行失败,如下图所示: 但是单独启动tomcat server后,在浏览器中输 ...
- iOS 清理文件缓存
本文摘自:<msp的昌伟哥哥-iOS开发-清理缓存功能的实现>摘下来的目的就是为了能够学习.还望看到文章的同学,前往原创的博客园.感谢msp的昌伟哥哥的分享精神. 移动应用在处理网络资源时 ...
- day46-守护线程
#1.守护线程要注意的坑:下面代码只能打印出子线程开始,无法打印出子线程执行完毕,因为主线程在t.start()以后就结束了, #而子线程要睡眠1秒,所以子线程守护线程随着主线程的结束而结束了. fr ...
- transcription-coupled repair|Germ|HK|TS|Mutation|四类变异
生命组学-可遗传变异 GC content:碱基: GC content不同的植物对应的gene length,可看作上图的转置: 由GC content看出来碱基变异程度,可以找到对应碱基改变,所以 ...
- BigDecimal不整除的一个异常java.lang.ArithmeticException
转载地址:http://blog.csdn.net/jobjava/article/details/6764623 金额的数据类型是BigDecimal 通过BigDecimal的divide方法进行 ...
- Yii框架的学习指南(策码秀才篇)1-2 一步步学习yii framework
我也是新手,不过之前学习了tp和ci框架,所以尝鲜想看看yii到底有多强大. 如何新建一个webapp(网站应用)呢,下面是2个步骤: 1. cmd 切换到htdocs下面的yii目录下的framew ...
- Qt .pro文件详解
在我们创建Qt工程项目时,Qt Creator总会创建一个.pro文件,我们称.pro文件为Qt的工程管理文件.一个工程项目可以包含一个或多个.pro文件.理解和掌握pro文件的用法,将有利于Qt开发 ...