ios设置文本的边框颜色

WechatIMG15.jpeg

比如要实现一个这种效果,当然可能有现成的第三方库,但是几行代码能搞定的就为了这一个功能导入一个库代价还是有点大,那么我们就来自己实现

代码很简单

/**
 空心字体

 @param str 文本
 @param textColor 文本颜色
 @param textBorderColor 文本边框颜色
 @param strokeWidth 文件边框宽度
 @return 文本
 */
+(NSMutableAttributedString *)textHollow:(NSString *)str textColor:(UIColor *)textColor textBorderColor:(UIColor *)textBorderColor strokeWidth:(CGFloat)strokeWidth
{
    NSDictionary *dict = @{
                           NSStrokeColorAttributeName:textBorderColor,
                           NSStrokeWidthAttributeName : [NSNumber numberWithFloat:strokeWidth],
                           NSForegroundColorAttributeName:textColor
                           };
    NSMutableAttributedString *attribtStr = [[NSMutableAttributedString alloc] initWithString:str attributes:dict];
    return attribtStr;
}

使用

self.progressLabel.attributedText = [NSString textHollow:[NSString stringWithFormat:@"%.0f",progress] textColor:_progressColor textBorderColor:[UIColor lightGrayColor] strokeWidth:-3];

需要注意的是:strokeWidth 要设置为负数,设置正数没有效果。

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

推荐阅读更多精彩内容

  • 青春是一场盛宴 色彩斑斓 爱情则是酒水 或浓或淡 你我同时入场 一见如故 交杯换盏 承诺要永远共度年华 可当席尽酒...
    马世子阅读 243评论 0 0
  • 2018年回头看2017年是什么样,年终的生活模样是年初的愿景,就是成功的一年,为了防止走偏,定个调调。 严格规划...
    水木风歌阅读 162评论 3 1
  • 注意事项: 1- basePackage扫描的是映射文件,即 xxx.xml。2- 如果有一个以上包,需要用逗号,...
    KardelShaw阅读 1,126评论 0 0
  • 老王的家坐落在贫困小县的一隅。 老王早上听着鸡打鸣起床,晚上在邻里的吵闹声中睡着。她家门口就是一大片田地,风吹着杨...
    凤凉阅读 512评论 4 16
  • 推荐指数:6.8 长尾理论,指的是通过规模化甚至自动化的方式把长长的尾部冷门销售单品(/服务)收集起来,聚沙成塔,...
    敖超成阅读 544评论 0 2