如果textfield的背景色设置的是黑色的话, 然后设置它的透明度为0.3, 就会显示出半透明的效果, 这时如果用键盘输入时, 会显示不出来输入的字体. 因为: textfield的字体默认也是黑色, 而且也变成半透明的了, 这就尴尬了......
这时, 就要设置一下textfield的字体颜色了, 设置成白色最好*.*
self.phoneNumeberTextField.textColor = [UIColor whiteColor];
self.phoneNumeberTextField = [[UITextField alloc] initWithFrame:CGRectMake(68, 350, 330, 50)]; self.phoneNumeberTextField.placeholder = @"请输入手机号"; [self.phoneNumeberTextField setValue:[UIColor whiteColor] forKeyPath:@"_placeholderLabel.textColor"]; self.phoneNumeberTextField.textColor = [UIColor whiteColor]; self.phoneNumeberTextField.alpha = 0.3; self.phoneNumeberTextField.backgroundColor = [UIColor blackColor];
同时, 你还会发现, placeholder的也会出项同样的问题, 解决方法一样的:
[self.phoneNumeberTextField setValue:[UIColor whiteColor] forKeyPath:@"_placeholderLabel.textColor"]; //更改placeholder的颜色.