Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >ios设置文本的边框颜色

ios设置文本的边框颜色

作者头像
赵哥窟
发布于 2018-09-13 03:44:42
发布于 2018-09-13 03:44:42
4K00
代码可运行
举报
文章被收录于专栏:日常技术分享日常技术分享
运行总次数:0
代码可运行

WechatIMG15.jpeg

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

代码很简单

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
/**
 空心字体

 @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;
}

使用

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
self.progressLabel.attributedText = [NSString textHollow:[NSString stringWithFormat:@"%.0f",progress] textColor:_progressColor textBorderColor:[UIColor lightGrayColor] strokeWidth:-3];

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

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018.08.15 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
iOS 之-富文本 (NSAttributedString)
关于富文本能做什么我就不多说了,我们一般遇到的图文混排等,这个还是很好做到的。 好,开讲了: 在讲之前,我们得先明白他的属性和一些方法 1.属性: NSFontAttributeName 设置字体属性,默认值:字体:Helvetica(Neue) 字号:12 NSForegroundColorAttributeNam 设置字体颜色,取值为 UIColor对象,默认值为黑色 NSBackgroundColorAttributeName
清墨
2018/05/07
3.2K0
iOS 之-富文本 (NSAttributedString)
PHP短视频源码,实现背景的镂空文字
以上就是PHP短视频源码,实现背景的镂空文字相关的代码, 更多内容欢迎关注之后的文章
yunbaokeji柯基
2020/11/05
6790
PHP短视频源码,实现背景的镂空文字
UI篇-CATextLayer和 富文本的交融
CATextLayer适用于IOS或者MAC,比UIlablel 和 NSTextView 能做的事很多,可以这样说UIlablel是通过CATextLayer实现的,身为CALayer的三大子类之一,它的功能远比 UIlablel 强大的多的多,其最主要的特点是CATextLayer可以被NSMutableAttributedString直接附值。而NSMutableAttributedString有可以最自己内容作出颜色以及大小的调整,这样结合起来使用的话,就远比UILabel 灵活的多,效果也酷炫的多,也许CATextLayer就是为了NSMutableAttributedString而生的,(哈哈,开个玩笑)。下面就简要介绍下CATextLayer 的常规使用,不足之处,还望朋友们下面留言补充,不胜感谢。 苹果官网给出CATextLayer的API解释
進无尽
2018/09/12
2.8K0
UI篇-CATextLayer和 富文本的交融
富文本AttributedString的总结
AttributedString可以分为NSAttributedString和NSMutableAttributedString两种。 在使用中通过将AttributedString赋值给控件的 attributedText 属性来添加文字样式。 可设置的控件有UILabel、UITextField和UITextView。
码客说
2019/10/22
3.6K0
带动画渐进效果与颜色渐变的圆弧进度控件设计 原
     今天帮朋友写了一个小巧的圆弧进度控件,控件十分简单,主要设计思路采用CAShapeLayer来创建控件圆弧形状,使用CAGradientLayer来进行颜色渐变的渲染,两者结合来创建出颜色渐变的圆弧进度条控件,关于进度动画采用CoreAnimation动画处理。控件进行了简洁的封装,提供了面向使用的接口,需要的朋友可以自取,Demo地址如下:
珲少
2018/08/15
1.3K0
带动画渐进效果与颜色渐变的圆弧进度控件设计
                                                                            原
短视频APP源码中系统评论功能是如何实现的
短视频系统中评论功能的分量在短视频功能里可谓是举足轻重,下面简单介绍下,短视频系统中的评论功能的实现方式:
nicai123
2019/10/18
8210
短视频APP源码中系统评论功能是如何实现的
【封装富文本API,采用block实现链式编程】(block 的妙用:结合block和方法的优点实现iOS的链式编程)
主要针对段落样式NSMutableParagraphStyle和富文本NSMutableAttributedString进行封装
公众号iOS逆向
2021/01/18
8880
【封装富文本API,采用block实现链式编程】(block 的妙用:结合block和方法的优点实现iOS的链式编程)
CALayer系列、CGContextRef、UIBezierPath、文本属性Attributes
先上效果图: CALayer系列.gif CGContextRef、UIBezierPath、文本属性Attributes.gif 一、CAEmitterLayer 粒子属性 //设置发射器 C
且行且珍惜_iOS
2018/05/22
1.1K0
UILabel在开发中的常用功能总结
在项目开发中,我们经常会遇到在这样情形: 1、在一个UILabel 使用不同的颜色或不同的字体来体现字符串 在iOS 6 以后我们可以很轻松的实现这一点,官方的API 为我们提供了UILabel类的attributedText, 使用不同颜色和不同字体的字符串,我们可以使用NSAttributedText 和 NSMutableAttributedText 类来实现。
Python疯子
2018/09/06
1.1K0
UILabel在开发中的常用功能总结
史上最全的iOS之UITextView实现placeHolder占位文字的N种方法
iOS开发中,UITextField和UITextView是最常用的文本接受类和文本展示类的控件。UITextField和UITextView都输入文本,也都可以监听文本的改变。不同的是,UITextField继承自UIControl这个抽象类。UITextView继承自UIScrollView这个实体类。这就导致了UITextView可以多行展示内容,并且还可以像UIScrollView一样滚动。而UITextField只能单独的展示一行内容。从这个角度,UITextView在功能上是优于UITextField的。 但是,众所周知,UITextField中有一个placeholder属性,可以设置UITextField的占位文字,起到提示用户输入相关信息的作用。可是,UITextView就没那么幸运了,apple没有给UITextView提供一个类似于placeholder这样的属性来供开发者使用。而开发中,我们经常会遇到既要占位文字,又要可以多行展示并且可以滚动的控件,单纯的UITextField或者UITextView都不能满足这种产品上的需求。比如,现在市面上的app大多都有一个用户反馈的入口,如下图(一)所示。下面我就把自己能够想到的方法汇总一下,让更多的开发者知道,原来有这么多方法可以实现UITextView的占位文字。
VV木公子
2018/06/05
10.9K0
图文混排
是基于 iOS 3.2+ 和 OSX 10.5+ 的一种能够对文本格式和文本布局进行精细控制的文本引擎。 它良好的结合了 UIKit 和 Core Graphics/Quartz: UIKit 的 UILabel 允许你通过在 IB 中简单的拖曳添加文本,但你不能改变文本的颜色和其中的单词。 Core Graphics/Quartz几乎允许你做任何系统允许的事情,但你需要为每个字形计算位置,并画在屏幕上。 Core Text 正结合了这两者!你可以完全控制位置、布局、类似文本大小和颜色这样的属性,而 Core Text 将帮你完善其它的东西——类似文本换行、字体呈现等等。
Helloted
2022/06/06
1.7K0
图文混排
绘图-圆环进度条实现详解
前言 实现了一款时下比较流行的环状进度动图,以下是源码解析 使用 Core Graphics 和 定时器 实现环形进度动图 圆环进度.gif 核心源码 # 使用 [self setNeedsDisp
進无尽
2018/09/12
2.3K0
绘图-圆环进度条实现详解
六天完成一个简单iOS App - 第二天
第二天任务: 项目主框架搭建完毕后,就可以从各个模块入手完成项目,这里从最简单的关注模块开始。 关注页面的搭建 登录界面的搭建 方法抽取与知识点总结 一. 关注页面的搭建 关注页面我们这里只做未登录的
xx_Cc
2018/05/10
2.3K0
iOS之NSAttributedString-------字符属性
NSAttributedString 字符属性 字符属性可以应用于 attributed string 的文本中。 NSString *const NSFontAttributeName;(字体) NSString *const NSParagraphStyleAttributeName;(段落) NSString *const NSForegroundColorAttributeName;(字体颜色) NSString *const NSBackgroundColorAttributeNam
用户1941540
2018/05/11
1.2K0
文字排版入门—— 排版基础、CoreText和图文混排
字符是文字的最小单元,以这段文字为例,每个字都是一个字符;需要注意,字符是一个抽象的概念; 当文字真正绘制出来时需要选择字体,以“A”这个字母为例,当字母'A'印刷出来或者显示到屏幕,可能有多种字体,每种字体都有一种字形'A':
落影
2020/02/25
7.9K0
文字排版入门—— 排版基础、CoreText和图文混排
iOS富文本使用指南: 1、封装富文本API,采用block实现链式编程 2、 超链接属性 3、HTML字符串与富文本互转
iOS开发效率工具:完整SDK源码【封装富文本API,采用block实现链式编程】(block 的妙用:结合block和方法的优点实现iOS的链式编程)
公众号iOS逆向
2021/03/08
1.6K0
iOS富文本使用指南: 1、封装富文本API,采用block实现链式编程 2、 超链接属性 3、HTML字符串与富文本互转
iOS文本布局探讨之三——使用TextKit框架进行富文本布局
        关于图文混排,其实以前的博客已经讨论很多,在实际开发中,经常使用第三方的框架来完成排版的需求,其中RCLabel和RTLabel是两个比较好用的第三方库,他们的实现都是基于UIView的,通过更底层的CoreText相关API来进行图文处理。相关介绍博客地址如下:
珲少
2018/08/15
2.3K0
iOS文本布局探讨之三——使用TextKit框架进行富文本布局
iOS开发知识点
莫空9081
2023/10/16
2130
iOS文本尺寸自适应异步计算实现
目前市面上的非UI线程文本算高方法或多或少都有一些问题。本文通过逆向和分析UILabel的sizeThatFits方法实现来得到一个最佳的文本算高的精简方法。方法可以运行在任意线程,因此可以有效的应用在那些异步算高或者要求尺寸进行提前计算的场景中。
欧阳大哥2013
2020/07/24
1.6K0
iOS中使用NSAttributedString灵活创建标签
灵活使用NSAttributedString可以更轻松的创建出内容复杂的标签。需要注意一点:如果一个label设置了这个属性,那它其他的设置都将失效。
珲少
2018/08/15
9360
推荐阅读
相关推荐
iOS 之-富文本 (NSAttributedString)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验