Ios UITextfield leftView作为覆盖
我试图添加一个“错误消息”气泡,当用户输入不正确的值时,它会出现在文本字段的顶部。我一直在使用.leftView属性,它工作得很好,但是它会占用文本字段中的“空间”,将内容推到右侧。将leftView显示为“覆盖”而不是字段本身的最佳方式是什么?(即删除其边界)Ios UITextfield leftView作为覆盖,ios,uikit,Ios,Uikit,我试图添加一个“错误消息”气泡,当用户输入不正确的值时,它会出现在文本字段的顶部。我一直在使用.leftView属性,它工作得很好,但是它会占用文本字段中的“空间”,将内容推到右侧。将leftView显示为“覆盖”而不是字段本身的最佳方式是什么?(即删除其边界) 所以我想我已经明白了。通过使用leftViewRectForBounds并返回零CGRect,我能够消除它的物理存在 override func leftViewRectForBounds(bounds: CGRect) -> C
所以我想我已经明白了。通过使用leftViewRectForBounds并返回零CGRect,我能够消除它的物理存在
override func leftViewRectForBounds(bounds: CGRect) -> CGRect {
return CGRect(x: 0, y: 0, width: 0, height: 0)
}
你不能创建一个气泡视图并将其作为子视图添加到视图控制器中吗?这是真的,但我正在尝试创建一个自定义的UITextField来分别处理所有这些。它使表单验证更容易分离所有代码,以便我可以在其他地方使用。请将您的代码添加到问题中,您需要创建一个自定义的
UIView
,其中包含一个文本字段和一些其他内容。。。可能不是UITextView
…UITextField没有为leftView提供类似frame的属性,因此无法更改leftView位置。您可以尝试创建一个自定义视图,例如MyCustomTextFieldWithBubbleMessageView,它将包含两个属性:一个UITextField
和一个UIView
。最后一个视图将是您的自定义气泡消息,它也可以是UILabel
。然后你可以使用autolayout
并相应地显示气泡消息。你试过我建议的代码了吗?它起作用,气泡出现在文本字段中。除非你试过这个密码,否则请不要投反对票。
override func leftViewRectForBounds(bounds: CGRect) -> CGRect {
return CGRect(x: 0, y: 0, width: 0, height: 0)
}