Ios UITextfield反弹文本
我为文本字段设置了插入Ios UITextfield反弹文本,ios,swift,uitextfield,Ios,Swift,Uitextfield,我为文本字段设置了插入 class PrimaryTextField:UITextField{ var padding=UIEdgeInsets(顶部:0,左侧:15,底部:0,右侧:15) 重写打开的func textRect(forBounds-bounds:CGRect)->CGRect{ 返回UIEDGEINSETINSETINSERCT(边界、填充) } 重写打开的func占位符rect(forBounds-bounds:CGRect)->CGRect{ 返回UIEDGEINSETIN
class PrimaryTextField:UITextField{
var padding=UIEdgeInsets(顶部:0,左侧:15,底部:0,右侧:15)
重写打开的func textRect(forBounds-bounds:CGRect)->CGRect{
返回UIEDGEINSETINSETINSERCT(边界、填充)
}
重写打开的func占位符rect(forBounds-bounds:CGRect)->CGRect{
返回UIEDGEINSETINSETINSERCT(边界、填充)
}
重写open func editingRect(forBounds-bounds:CGRect)->CGRect{
返回UIEDGEINSETINSETINSERCT(边界、填充)
}
}
它工作得很好,但当用户在文本字段之间跳跃时,文本会反弹
问题只出现在真实设备上,模拟器正常。您是否有任何想法,如何解决此问题?您可以创建
i可检测UITextField
class PaddedTextField: UITextField {
@IBInspectable var padding: CGFloat = 0
override func textRect(forBounds bounds: CGRect) -> CGRect {
return CGRect(x: bounds.origin.x + padding, y: bounds.origin.y, width: bounds.width - padding * 2, height: bounds.height)
}
override func editingRect(forBounds bounds: CGRect) -> CGRect {
return CGRect(x: bounds.origin.x + padding, y: bounds.origin.y, width: bounds.width - padding * 2, height: bounds.height)
}
}
它在iOS设备中也对我有效
请尝试告诉我。键盘将隐藏和显示通知时出现问题。我在那里设置约束动画。在动画和文本不再反弹之前,我在下面添加了代码
UIView.perform无动画({
emailTextField.layoutIfNeeded()
passwordTextField.layoutIfNeeded()
})
嘿,还是一样的问题。解决了我的问题这对我来说是个解决方案。