我有一个UITextField
,它将显示0到1.0之间的小数点后3位数字的浮点值。因此,它将显示的最宽文字为“ 0.000”。我想设置自动布局宽度限制,以便文本字段始终有足够的空间来显示此值。
下面的代码已关闭,但不起作用。
let biggestString = "0.000"
let textAttrs = [NSAttributedStringKey.font: myField.font]
let size = (biggestString as NSString).size(withAttributes: textAttrs)
myField.widthAnchor.constraint(equalToConstant: size.width).isActive = true
它最终显示为“ 1.0 ...”,我猜这是因为UITextField
在文本周围有某种填充,所以我需要将宽度设置为字符串宽度+填充。但是,我没有看到可以读取此填充量的属性。有办法吗?
答案 0 :(得分:0)
尝试搜索“ intrinsicContentSize”。根据文档,必须设置此值以指示自动版式的内容有多大。
关于布局设置不允许调整大小的实际操作方法,我们进行了更详细的讨论,请参见此处的其他问题: