Swift|Swift TTTAttributedLabel 的简单使用
最近在看Swift,之前在OC用到过TTTAttributedLabel 感觉还不错,就想试一下用Swift实现一下。这里实现一个简单的功能,直接上图。。
文章图片
QQ20170608-152002@2x.png
我使用pod 导的 TTTAttributedLabel 这比较方便。
首先先懒加载初始化一个Label
//懒加载初始化 TTTAttributedLabel
lazy var tttAttributedLabel: TTTAttributedLabel = {
var tttAttributedLabel = TTTAttributedLabel.init(frame: CGRect.init(x: 0, y: 100, width: UIScreen.main.bounds.size.width, height: 50))
tttAttributedLabel.numberOfLines = 0
//这里是给fromname 设置字体颜色 还可以设置字体大小等。
tttAttributedLabel.linkAttributes = [NSForegroundColorAttributeName: UIColor.red]
//tttAttributedLabel.linkAttributes = [NSFontAttributeName: UIFont.systemFont(ofSize: 15)]
return tttAttributedLabel
}()
这里写两个假数据
let content = NSString.init(string: "小张:你好,你好,你好,你好!")
let fromname = NSString.init(string: "小张")
然后 可以设置Lable的属性 字体大小 颜色等
//这里可以更改Label 的属性字体大小字体颜色等
let attr = [
NSFontAttributeName: UIFont.systemFont(ofSize: 20),
NSForegroundColorAttributeName: UIColor.black
]
//这里两个参数 第一个参数 是label全部的内容。
//第二个参数是 上面的属性
let contentAttributedString = NSAttributedString.init(string: content as String, attributes: attr)
然后就是赋值了
//给lable赋值 用attributedText
tttAttributedLabel.attributedText = contentAttributedString
接下来设置红色字体部分
//这里是添加 哪一部分 是其他颜色这个就是那个fromname
//主要有三个参数 第一个参数是红色字体的内容
//第二个参数是从哪开始
//第三个参数是 红色的长度
let fromLink = tttAttributedLabel .addLink(toPhoneNumber: fromname as String!, with: NSRange.init(location: 0, length: fromname.length+1))
然后设置红色部分的点击事件
//这里是给fromname 添加点击事件
fromLink?.linkTapBlock = TTTAttributedLabelLinkBlock!.init({ (TTTAttributedLabel, TTTAttributedLabelLink) in
print(TTTAttributedLabel?.text! ?? String())
})
【Swift|Swift TTTAttributedLabel 的简单使用】到这里就差不多结束了,付一个小demo的链接
http://git.oschina.net/Allen__yao/swift_tttattributedlabeldemo
刚开始研究Swift 还请大神们多多指教。。
推荐阅读
- 热闹中的孤独
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- 放屁有这三个特征的,请注意啦!这说明你的身体毒素太多
- 一个人的旅行,三亚
- 布丽吉特,人生绝对的赢家
- 慢慢的美丽
- 尽力
- 一个小故事,我的思考。
- 家乡的那条小河
- 《真与假的困惑》???|《真与假的困惑》??? ——致良知是一种伟大的力量