防止 UITextField 在键入时更改宽度

Posted

技术标签:

【中文标题】防止 UITextField 在键入时更改宽度【英文标题】:Prevent UITextField from changing width while typing 【发布时间】:2019-07-16 14:42:18 【问题描述】:

我有以下布局:

具有以下约束:

问题是UITextField 的宽度在打字时发生了变化:

【问题讨论】:

看起来您的按钮宽度设置为<= 47 - 这意味着您正在告诉自动布局继续并在需要时压缩按钮的宽度(允许 textField 宽度增长) .如果将按钮宽度更改为= 47,会发生什么? 是的@DonMag 它停止压缩标签,但我需要设置它 哎呀...我只是假设那是一个按钮。无论如何,请参阅我的回答 - 这应该会为您解决。 【参考方案1】:

保留标签的宽度限制为<= 47,但更改其

Horizontal Content Compression Resistance Priority` to `Required (1000)

这将防止它在文本字段中的文本过多时被压缩(文本字段将滚动而不是展开)。

请注意,<= 47 约束将在需要时截断标签的文本。如果您不想要该限制,则可以完全删除该宽度限制...

【讨论】:

以上是关于防止 UITextField 在键入时更改宽度的主要内容,如果未能解决你的问题,请参考以下文章

如何在键入时使 UITextField 宽度调整为文本?

在 UITextField 中键入时保持占位符静态

无法更改 UITextField 的宽度

UITextField 的宽度永远不会小于占位符文本的宽度

交换 UITextField 的 isEnabled 更改背景颜色以及如何防止它

无法在材质 UI TextField 中键入文本