我发现与UITextField有关的问题。我创建了一个uitexfield的子类,允许用户点击文本开始编辑,然后旋转和调整文本大小。UITextField调整大小问题
如果通过增大高度来调整文本框的大小,即使文本框的宽度不增加,居中文本也会向右移动。我调查了这一点,发现uitextfield具有UIFieldEditor类型的内部视图,而该视图又具有_UIFieldEditorContentView视图。 UIFieldEditor似乎是UIScrollView的子类,并且此scrollview的内容大小比uitextview的大小要大得多。当textview增加高度时,scrollviews内容宽度会增加。我想这可能是一个内部自动布局问题。
我在这里添加了一个演示项目来演示这个问题。点击文本开始编辑,然后拖动调整大小图标,使高度增加,您将看到问题。从revealapp
https://github.com/permagnus/UITextField-Resize-Issue-Demo
Screenhots:在滚动视图基础视图的
的UITextField的实际工作尺寸:https://github.com/permagnus/UITextField-Resize-Issue-Demo/blob/master/Screenshots/screenshot-showing-textfield-size.png
关于如何解决此问题的任何想法?
感谢您发现这些解决方法。使用Apple建议。在任何成为FirstFoundResponder之后调用类似以下的私人func resetTextField(textField:UITextField)let text = textField.text textField.text =“” textField.text = text } –