我发现 UITextField 存在问题。我创建了一个 uitexfield 的子类,它允许用户单击文本开始编辑,然后旋转和调整文本大小。
如果通过使高度变大来调整文本字段的大小,即使文本字段的宽度没有增加,居中的文本也会向右移动。我对此进行了调查,发现 uitextfield 具有 UIFieldEditor 类型的内部视图,而 UIFieldEditor 又具有 _UIFieldEditorContentView 视图。UIFieldEditor 似乎是 UIScrollView 的子类,并且此滚动视图的内容大小变得比 uitextview 的大小大得多。当 textview 增加它的高度时,scrollviews contentsize 宽度增加。我想这可能是内部自动布局问题。
我在这里添加了一个演示项目来演示该问题。单击文本开始编辑,然后拖动调整大小图标,使高度增加,您将看到问题。
https://github.com/permagnus/UITextField-Resize-Issue-Demo
来自revealapp的截图:
滚动视图中底层视图的大小不正确:https ://github.com/permagnus/UITextField-Resize-Issue-Demo/blob/master/Screenshots/screenshot-showing-incorrect-size.png
uitextfield 的实际大小:https ://github.com/permagnus/UITextField-Resize-Issue-Demo/blob/master/Screenshots/screenshot-showing-textfield-size.png
有关如何解决此问题的任何想法?