【发布时间】:2018-02-21 12:59:04
【问题描述】:
我在使用monospacedDigitSystemFont(ofSize:weight:)时遇到了一个奇怪的问题
我的UIViewController 中有一个UISlider 和一个UILabel。标签显示滑块的当前值 + 一些描述文本。在更改滑块的值时,myLabel 的文本会左右晃动。我希望myLabel 的文本不会左右晃动,因为我使用的是monospacedDigitSystemFont(ofSize:weight:)。
这是我的代码:
import UIKit
class ExampleViewController: UIViewController {
@IBOutlet weak var myLabel: UILabel!
@IBOutlet weak var mySlider: UISlider!
override func viewDidLoad() {
super.viewDidLoad()
myLabel.font = UIFont.monospacedDigitSystemFont(ofSize: 15, weight: .bold)
}
@IBAction func sliderChanged(_ sender: UISlider) {
myLabel.text = String(format: "%.5f is the actual Value of the Slider", sender.value)
}
}
关于摇晃的 GIF:
有什么建议吗?我错过了什么吗?
【问题讨论】:
-
您可以右对齐您的文字以避免这种行为,这是由于您使用幻灯片时不同的文字宽度
-
@Y.Bonafons 这仅在描述文本位于滑块值后面时才有效。当我更改它以使滑块的值位于描述文本之前并右对齐文本时,我遇到了同样的问题。
标签: ios swift uilabel uislider monospace