8

在我的 UITextField 上,rightView 属性在显示时从左侧动画(滑入)。

我不确定如何阻止这种行为的发生?

4

2 回答 2

19

我最近在 iOS 8 上发生了这种情况。

事实证明, 的初始位置相对于rightView位于 (0,0) UITextField,当它第一次显示时,它被设置为正确的位置。如果同时显示键盘,则键盘的位置会以rightView某种方式与键盘的动画一起动画。如果你打开“慢动画”,你可以在模拟器中清楚地看到这一点(⌘</kbd> + T).

解决方案是在键盘动画开始之前将 设置rightView为最终位置。例如,在viewDidLoador中viewWillAppear,调用:

textField.rightView.frame = [textField rightViewRectForBounds:textField.bounds]

迅速:

textField.rightView?.frame = textField.rightViewRect(forBounds: textField.bounds)
于 2015-02-11T18:46:15.107 回答
-1

你可以玩弄rightViewMode财产

textField.rightViewMode = UITextFieldViewModeAlways;

有以下模式可用:

UITextFieldViewModeNever,
UITextFieldViewModeWhileEditing,
UITextFieldViewModeUnlessEditing,
UITextFieldViewModeAlways
于 2013-09-17T15:38:52.133 回答