状況
- 対象のUILabelのtextを処理によって変えたい
- textによって幅の長さを変えたい
- 対象のUILabelになんらかの制約がかかっている
なにがあったのか
UILabelの幅をtextの長さではなく自由に設定したいが、制約がかかっている場合だとどうも label.frame
や、textを基準にしたPadding的なことをコードを書いて設定することができない(できなかった)。
単純にStoryboardで設定すればうまくいくが、例えばなんらかの処理でtextの文字列が変わるとその都度変えることができなくなる。
なんとかする
コードで制約を書いて変更したらなんとかなった。
label.text = "なんとかしてください"
label.widthAnchor.constraint(equalToConstant: 100).isActive = true
これを if
とかで分岐した処理によって数値を変えたらいいと思う。