Closed 597579501 closed 8 years ago
https://github.com/ibireme/YYText#文本布局计算
换行可以看一下 YYTextContainer。
昨天和朋友讨论了一个问题。所以想来YY大神你这证实一下。确实你写的库很棒。我已经到了很多时候不愿意UILabel之类的东西优先考虑YY开头的东西。所有只要界面是一个label带一个图片的东西。我都会考虑你用的YYLabel加NSMutableAttributedString拼装实现。以前的做法都是label是label。imageView是image。这样开发起来坐标很费时间和力。但是我那个同事提出来说你这样的做法。会影响到效率。那么我的疑问就是如果真的是一个label和一个image拼装的东西。用富文本效率上会不如分别一个label和uiimageView这样吗
一个 label 和 一个 image 的情况下,可能 YYLabel 性能会差一些;Label 或是 image 多一些,那 YYLabel 性能可能会有些优势。
YYlable不就是解决性能的问题吗?
发自我的 iPhone
在 2016年3月15日,16:30,Yaoyuan notifications@github.com 写道:
一个 label 和 一个 image 的情况下,可能 YYLabel 性能会差一些;Label 或是 image 多一些,那 YYLabel 性能可能会有些优势。
— You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/ibireme/YYText/issues/214#issuecomment-196716520
YYLabel 在纯文本的情况下,总 CPU 消耗可能要比 UILabel 高一点,在复杂的文本和图片的情况下,YYLabel 的总 CPU 消耗可能会低一些。由于文本排版与绘制的原理基本一致,所以这个性能差距不会很大。
YYLabel 的优势是在于异步排版与绘制,开启异步模式时,大部分 CPU 占用会从主线程挪到其他后台线程去,这是 UILabel 做不到的。
NSMutableAttributedString如何直接换行呢。 好比我下面2个文本。如何根据2个文本换行。 如果加个\n则计算坐标错误
NSString fansNumStr = @"123"; NSString fanTitleStr = @"相册"; NSMutableAttributedString text = [NSMutableAttributedString new]; NSMutableAttributedString fansNumAttributedString = [[NSMutableAttributedString alloc] initWithString:fansNumStr]; NSMutableAttributedString *fansTitleAttributedString = [[NSMutableAttributedString alloc] initWithString:fanTitleStr]; [fansNumAttributedString setColor:UIColorHex(0xffffff)]; [fansTitleAttributedString setColor:UIColorHexAlpha(0xffffff, 0.5)]; [fansNumAttributedString setFont:Font(16)]; [fansTitleAttributedString setFont:Font(10)]; [text appendAttributedString:fansNumAttributedString]; [text appendAttributedString:fansTitleAttributedString]; _photoLabel.attributedText = text;