ios - UITextField 文本在设置宽度动画时会拉伸(stretch)

标签 ios uitextfield

我的应用程序有一个文本字段,当它成为第一响应者时,它会缩小宽度以显示“取消”按钮,并在文本字段放弃第一响应者时向后扩展。这一切都是通过自动布局完成的:我在文本字段上有一个“ super View 的尾随空格”约束。为了扩展它,我只是减少这个常量,使其与取消按钮重叠(其 alpha 同时淡出)。为了将其折叠回来,我再次增加了常数。相当标准的东西。问题是,当字段开始动画时,文本的宽度会扭曲,然后随着文本字段收缩,动画会恢复到正常比例。这是一种非常奇怪且不受欢迎的效果。有没有人经历过这种情况,您对如何预防它有什么见解吗?谢谢!

Screen capture

最佳答案

我面临着同样的问题,我发现了几年前的这个问题:Strange behavior when animating UITextField

它的解决方案对我有用。我最初尝试在以下委托(delegate)方法中对 UITextField 的宽度进行动画处理:

- (void)textFieldDidBeginEditing:(UITextField *)textField;
- (void)textFieldDidEndEditing:(UITextField *)textField;

这导致了您所看到的文本失真。为了解决这个问题,我将动画移至这两个委托(delegate)方法:

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField;
- (BOOL)textFieldShouldEndEditing:(UITextField *)textField;

文本现在不会拉伸(stretch)。

关于ios - UITextField 文本在设置宽度动画时会拉伸(stretch),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31706905/

相关文章:

ios - 自定义事件指示器不起作用( objective-c )

ios - 在 Objective C 中将 Hex NSData 转换为 int

ios - UITargetedPreview 的 View 或容器当前都不在窗口中

ios - CGContextSetFillColorWithColor 不适用于传入的颜色变量

ios - 在数组中发送动态创建的文本字段数据

iphone - 如何在 UITextField 键盘中启用 "return button"?

iphone - 带有插入图像选项的可扩展 UITextField

iphone - iPad 应用程序分发

iPhone:跳转到uitableview中的下一个uitextfield,如何?

ios - 如何停止 UIKeyboard 返回键工作