我想要创建一个UILabel,其中的文本是这样的(像角度,而不是水平)。谁能提个建议吗?

发布于 2018-11-22 12:06:54
您所需要做的就是将标签的宽度调整到内容大小。
testLabel.text = "Tk 1,750"
testLabel.frame.size.width = myLabel.intrinsicContentSize.width然后按照@fzh的说法使用
testLabel.addSlantLine(slantLineColor: UIColor.lightGray,
slantLineWidth: 2,
startPoint: CGPoint(x: 0, y: testLabel.frame.height - 2),
endPoint: CGPoint(x: testLabel.frame.width, y: 2))备注:文本更新后的剪裁
发布于 2018-11-22 10:56:55
您可以添加如下扩展:
extension UILabel {
func addSlantLine(slantLineColor: UIColor, slantLineWidth:CGFloat, startPoint: CGPoint, endPoint: CGPoint) {
let slantLinePath = UIBezierPath()
slantLinePath.move(to: startPoint)
slantLinePath.addLine(to: endPoint)
let slantLineLayer = CAShapeLayer()
slantLineLayer.path = slantLinePath.cgPath
slantLineLayer.lineWidth = slantLineWidth
slantLineLayer.strokeColor = slantLineColor.cgColor
layer.addSublayer(slantLineLayer)
}
}用途:
testLabel.addSlantLine(slantLineColor: UIColor.lightGray,
slantLineWidth: 2,
startPoint: CGPoint(x: 0, y: testLabel.frame.height - 2),
endPoint: CGPoint(x: testLabel.frame.width, y: 2))https://stackoverflow.com/questions/53428496
复制相似问题