带圆角的彩色文本背景
Posted
技术标签:
【中文标题】带圆角的彩色文本背景【英文标题】:Colored text background with rounded corners 【发布时间】:2018-03-02 14:16:26 【问题描述】:我目前正在用Swift开发一个ios应用,我需要实现附图所示的文字效果。
我有一个标签显示用户写的一些文本,我需要使文本背景角(不是标签背景)圆角。
有没有办法做到这一点? 我会搜索网络和 ***,但没有运气。
谢谢。
【问题讨论】:
【参考方案1】:这里有一些可以帮助你的代码。我得到的结果和你想要的很相似。
class MyTextView: UITextView
let textViewPadding: CGFloat = 7.0
override func draw(_ rect: CGRect)
self.layoutManager.enumerateLineFragments(forGlyphRange: NSMakeRange(0, self.text.count)) (rect, usedRect, textContainer, glyphRange, Bool) in
let rect = CGRect(x: usedRect.origin.x, y: usedRect.origin.y + self.textViewPadding, width: usedRect.size.width, height: usedRect.size.height*1.2)
let rectanglePath = UIBezierPath(roundedRect: rect, cornerRadius: 3)
UIColor.red.setFill()
rectanglePath.fill()
【讨论】:
非常感谢!我会尽快尝试并告诉你:) 你可以试试,但我不确定 完美!我已经设法让它在用户按下每个键时工作!非常感谢!以上是关于带圆角的彩色文本背景的主要内容,如果未能解决你的问题,请参考以下文章