我有一个我需要自定义的文本字段。 我希望边框只显示在文本字段的底部(而不是矩形,我想要一个无边框的文本字段,文本下只有一行)。
我尝试了什么:
在viewDidLoad
中,我尝试更改.borderStyle
属性,然后注意到我可以在IB中
我查看了.layer属性。
试图设置一个背景图像,它是白色的,底部有一条线,但没有backgroundImage属性或textField.view
我尝试创建一个视图并将其附加到textField.subViews (UIView[])
。
我试过了UITextField
的子类,但没有用(因为我不知道将修改放在哪个方法,如果有的话)。
答案 0 :(得分:1)
直接的答案是不可能只在底部设置边框。但如果你故意寻找这种行为,你可以尝试以下想法。
这个想法是创建一个uiview,它看起来像是UITextField底部的一行。请参见下面的示例屏幕。
答案 1 :(得分:0)
你需要做的是Subclass UITextField并制作你自己的版本。 覆盖您将用于实例化的方法,例如initWithFrame或initWithCoder。在这些方法中,您可以将高度为1像素的UIView和文本字段大小的宽度添加到文本域底部作为子视图,不要忘记设置视图颜色!
所以要明确使用init with frame如果你自己通过调用它来实例化它:
[[UITextField alloc] initWithFrame:frame]
或者你可以覆盖
- (void)awakeFromNib