我正在编写一个应用程序,我希望将文本字段背景变为白色。
到目前为止,这是我的代码:
- (void)viewDidLoad
{
UITextField *txtfield = UsernameTextField;
[txtfield setBackgroundColor:[UIColor colorWithWhite:1 alpha:0.5] ];
txtfield.layer.borderColor = [UIColor blackColor].CGColor;
txtfield.layer.borderWidth = 1;
txtfield.borderStyle = UITextBorderStyleRoundedRect;
[super viewDidLoad];
// Do any additional setup after loading the view.
}
但是这段代码有这样的结果:
我尝试了这段代码,以增加alpha
[txtfield setBackgroundColor:[UIColor colorWithWhite:1 alpha:0.8] ];
仍然相同
我也看到了这篇文章
iPhone UITextField background color
我试过
但它仍然相同
为什么textfield不会变成白色?
答案 0 :(得分:1)
要更改背景颜色,将边框设置为无
非常重要txtfield.borderStyle = UITextBorderStyleNone;
详细信息:Changing background colour within a TextField in Interface Builder
iPhone UITextField background color
来自Apple Doc:
设置后,此属性引用的图像将替换borderStyle属性控制的标准外观。在文本字段的边框矩形部分中绘制背景图像。用于文本字段背景的图像应该能够伸展以适应。
答案 1 :(得分:1)
首先,你应该
[super viewDidLoad]
应该是初始化父项初始化后- (void)viewDidLoad
中的第一个语句。第二
UsernameTextField
置于所有视图的顶部,或者您可以在代码中调用[self.view bringSubviewToFront:txtfield]
第三
最后你仍然没有解决它,然后你在xib / storyboard视图中做了一些改变。因此,重置只删除文本字段并重新添加。