iOS Swift UITextfield调整字体大小以适应宽度

4

当UITextfield输入的字符过长时,如何调整字体大小? 我尝试了adjustsFontSizeToFitWidth,但它并没有起作用。 感谢您提供任何帮助。


您想根据宽度调整字体大小吗? - Vibha Singh
3个回答

8

针对UITextField,文本必须适合一行并且不能换行。

您有两个选择:

缩小字体使其符合一行:

self.TextFieldExample.adjustsFontSizeToFitWidth = YES; 
self.TextFieldExample.minimumFontSize = 10.0; //Optionally specify min size

使用UITextView实现文本换行:

抱歉我没有使用过 Swift,但至少你会得到一些适用于 Swift 的逻辑。再次抱歉 :) - Vibha Singh

4

使用 Swift 4 的解决方案

请确保将 adjustsFontSizeToFitWidth 设置为 true,然后设置您的 minimumFontSize。这会将 UITextField 中的文本缩放以适应您的 UITextField 宽度,并使最小字体大小等于或大于您设置的 minimumFontSize。当文本仍然过长而无法缩小到最小字体大小时,它将截断其余部分。

textField.adjustsFontSizeToFitWidth = true
textField.minimumFontSize = 10

-1

你必须先设置宽度

textField.frame = CGRect(0, 0, your width, your height)

textField.minimumFontSize = 0.5

你需要将 adjustsFontSizeToFitWidth 设置为 true 才能设置 minimumFontSize - Devbot10

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接