我在 XIB 中遇到问题。我的占位符颜色在界面生成器中默认为灰色,但是当我运行应用程序时,文本的颜色为白色,我看不到它,因为背景是白色的。
有人对此有解决方案吗?
我在 XIB 中遇到问题。我的占位符颜色在界面生成器中默认为灰色,但是当我运行应用程序时,文本的颜色为白色,我看不到它,因为背景是白色的。
有人对此有解决方案吗?
您可以这样覆盖drawPlaceholderInRect:(CGRect)rect
以手动呈现占位符文本UITextField
- (void) drawPlaceholderInRect:(CGRect)rect {
[[UIColor blueColor] setFill];
[[self placeholder] drawInRect:rect withFont:[UIFont systemFontOfSize:16]];
}
上述解决方案对我不起作用,我使用了以下解决方法。
[UILabel appearanceWhenContainedIn:[UITextField class], nil] setTextColor:[UIColor darkGrayColor]];
但后来我知道了另一个错误,上面的工作完成了,但它也将所有其他标签的颜色重置为默认黑色。然后我不得不对 UILabel 类进行子类化,并在我认为的所有其他标签中使用我的类。
快速修复语法:
[[UILabel appearanceWhenContainedIn:[UITextField class], nil] setTextColor:[UIColor darkGrayColor]];