在 UIlabel 中查找特定字符?
Find specific characters in UIlabel?
我目前遇到一个关于在 UILabel 中查找特定字符的小问题。我尝试了简单的
if variable == "the string you want it to equal" {
//Do the thing you want
}
问题是我的 UIlabel 根据时间更新。这通常不会有问题,但我旁边还有一个较小的标签作为秒数。
在主时间标签达到两位数 10、11、12 之前,这一切正常。这会导致标签扩展并切断较小的秒标签。我知道我可以将较小的标签放在主标签不会切割它的地方,但设计不会那么好。
我也尝试将变量设置为布尔值
let time10 = "10"
let time11 = "11"
let time12 = "12"
现在这将需要我创建许多其他变量,例如“10:01,10:02”,这将是非常低效的。
swift 中的功能是否有可能在字符串中查找特定数量的字符(在本例中为前 2 个字符),如果条件是,让我写下我想做的事情认识?
每次更新标签值时尝试使用 label.sizeToFit
。希望它能解决这个问题。
要回答您原来的问题,您可以使用计数函数,例如您可以 count(string)
,如 this 答案中所述。
尝试使用 .minimumScaleFactor
和自动布局优先级。
第一个会让一个标签缩小字体大小以避免 ...
.
使用自动布局优先级,您可以使标签缩小而不管另一个标签。
如果您使用的是 Interface Builder,应该会更容易。
希望对您有所帮助
我目前遇到一个关于在 UILabel 中查找特定字符的小问题。我尝试了简单的
if variable == "the string you want it to equal" {
//Do the thing you want
}
问题是我的 UIlabel 根据时间更新。这通常不会有问题,但我旁边还有一个较小的标签作为秒数。
在主时间标签达到两位数 10、11、12 之前,这一切正常。这会导致标签扩展并切断较小的秒标签。我知道我可以将较小的标签放在主标签不会切割它的地方,但设计不会那么好。
我也尝试将变量设置为布尔值
let time10 = "10"
let time11 = "11"
let time12 = "12"
现在这将需要我创建许多其他变量,例如“10:01,10:02”,这将是非常低效的。
swift 中的功能是否有可能在字符串中查找特定数量的字符(在本例中为前 2 个字符),如果条件是,让我写下我想做的事情认识?
每次更新标签值时尝试使用 label.sizeToFit
。希望它能解决这个问题。
要回答您原来的问题,您可以使用计数函数,例如您可以 count(string)
,如 this 答案中所述。
尝试使用 .minimumScaleFactor
和自动布局优先级。
第一个会让一个标签缩小字体大小以避免 ...
.
使用自动布局优先级,您可以使标签缩小而不管另一个标签。
如果您使用的是 Interface Builder,应该会更容易。
希望对您有所帮助