Ios swift如何使UILabel与左上角对齐
我正在制作一个琐事应用程序,逐字打印出问题,目前它从UILabel的中间开始,将前面的文本向上推。我想知道是否可以从标签左上角的第一个单词开始,然后继续打印其余的单词Ios swift如何使UILabel与左上角对齐,ios,swift,uilabel,Ios,Swift,Uilabel,我正在制作一个琐事应用程序,逐字打印出问题,目前它从UILabel的中间开始,将前面的文本向上推。我想知道是否可以从标签左上角的第一个单词开始,然后继续打印其余的单词 func printQuestion () { var str = quizbrain.getQuestionText() var arr = str.components(separatedBy: " ") var count = 0
func printQuestion ()
{
var str = quizbrain.getQuestionText()
var arr = str.components(separatedBy: " ")
var count = 0
Timer.scheduledTimer(withTimeInterval: 0.25, repeats: true) { (t) in
self.questionLabel.text! += " " + arr[count]
count += 1
if count == arr.count {
t.invalidate()
}
if self.hasBuzzed == true {
t.invalidate()
}
}
我想知道我是否能从标签左上角的第一个单词开始
不,你不能。当标签的文本发生变化时,标签不是这样绘制的
很酷的解决方法:从包含整个文本的标签开始,但使用属性字符串,使文本与背景颜色相同(例如白色对白色),因此不可见。在计时器中,每次将一个单词的颜色更改为黑色
这样,您永远不会更改文本,只更改颜色,因此文本不会随着每个单词的显示而移动
添加了一个屏幕广播,显示我的变通方案效果良好。