我以编程方式设置标签,并且想要在单击按钮后更改标签的文本。但是,标签仅显示文本的一部分。例如,我想将文本从“按下开始旅行”更改为“搜索GPS信号..”,即使没有“ ...”也仅显示“正在搜索”以指示还有更多文本。有人可以帮我吗?谢谢!
let startTravelBtn = UIButton(frame: CGRect(x: 40, y: 50, width: 50,
高度:30))
let startTipLabel = UILabel(frame: CGRect(x: 100, y: 50, width: 200, height: 30))
答案 0 :(得分:3)
更改标签文本时,应考虑其框架的新尺寸。如果新尺寸需要更大的宽度,则默认情况下它将用startTipLabel.text = "Some longer text from comparing to previous text"
startTipLabel.sizeToFit() // fits the label frame to it's content
截断文本。因此,您应该在设置文本后调整标签边框的大小。
例如:
vfmadd231pd ymm0, ymm1, ymm3
答案 1 :(得分:1)
希望您会从此获得帮助
解决方案
yourLabel.text = "Lorem Ipsum is simply dummy text of the printing"
yourLabel.sizeToFit()
OR
将标签上的行设置为0
答案 2 :(得分:0)
希望这会对您有所帮助。您可以将removeDuplicates
设置为numberOfLines
0
答案 3 :(得分:0)
public let descriptionLabel: UILabel = {
let label = PaddingLabel(withInsets: 10, 10, 10, 10)
label.translatesAutoresizingMaskIntoConstraints = false
label.font = UIFont(name: "Helvetica Neue Light", size: 17)
label.adjustsFontSizeToFitWidth = true
label.numberOfLines = 0
label.sizeToFit()
(label.lineBreakMode = .byWordWrapping) - 也不起作用
我试了很多方法 结果只有这个方法 (label.adjustsFontSizeToFitWidth = true) 有助于避免隐藏文本。