我的项目中有UIScrollView,包括UIlabel水平滚动,这个标签是水平增加的文本。
搜索后我找到了这段代码,但问题是它始终找到第一个匹配字符的x位置
这是我的代码
if let range = mylabel.text?.range(of: String(describing: mylabel.text?.characters.last!)) {
let prefix = mylabel.text?.substring(to: range.lowerBound)
let size: CGSize = prefix!.size(attributes: [NSFontAttributeName: UIFont.systemFont(ofSize: 35.0)])
let position = CGPoint(x:size.width,y: 0)
myScrollView.setContentOffset(position, animated: true)
}
我需要在标签字符串中找到最后一个字符的x位置,以便自动滚动到那里 谢谢
答案 0 :(得分:1)
您应该能够通过以下方式获取文本的宽度:
label.intrinsicContentSize.width
然后将其添加到标签的X位置,假设文本是左对齐的。