使用一个label显示不同的字体和颜色

最近有个需求,要实现一个翻页,显示当前页数和总页数,页数和总页数字体大小不一样。当然了实现这个效果是很容易的,两个label简单搞定。可是,我们使用一个label也是可以的哟。即将实现的效果图如下:

Paste_Image.png

在这里我们可以使用label的一个属性,叫做attributedText,很强大哟。不说了上代码:

   //加1是为了让page从1开始
    NSString * pageIndexStr = [NSString stringWithFormat:@"%d",(int)index+1];
    NSRange range = NSMakeRange(0, pageIndexStr.length);
    NSString * pageLabelText = [NSString stringWithFormat:@"%d/%d",(int)index+1,(int)_photos.count];
    NSMutableAttributedString * str = [[NSMutableAttributedString alloc]initWithString:pageLabelText];
    [str addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:18] range:range];
    _currentPageLabel.attributedText = str;

range:将要设置特殊字体的位置。
NSFontAttributeName:设置字体。
NSForegroundColorAttributeName:设置字体颜色。

//设置字体颜色
[str addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:NSMakeRange(0,5)]; 

NSUnderlineStyleAttributeName:设置下划线。
......
还有很多的属性,需要的亲们可以自己在xcode中查看。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容