【发布时间】:2012-05-16 18:56:29
【问题描述】:
我在 XIB 中遇到问题。我的占位符颜色的颜色在界面生成器中默认为灰色,但是当我运行应用程序时,文本的颜色为白色,我看不到它,因为背景是白色的。
有没有人可以解决这个问题?
【问题讨论】:
标签: ios5 interface-builder uitextfield xcode4.3 placeholder
我在 XIB 中遇到问题。我的占位符颜色的颜色在界面生成器中默认为灰色,但是当我运行应用程序时,文本的颜色为白色,我看不到它,因为背景是白色的。
有没有人可以解决这个问题?
【问题讨论】:
标签: ios5 interface-builder uitextfield xcode4.3 placeholder
您可以像这样覆盖drawPlaceholderInRect:(CGRect)rect 以手动呈现UITextField 中的占位符文本
- (void) drawPlaceholderInRect:(CGRect)rect {
[[UIColor blueColor] setFill];
[[self placeholder] drawInRect:rect withFont:[UIFont systemFontOfSize:16]];
}
【讨论】:
UITextField的子类?比如,CustomTextField?
上述解决方案对我不起作用,我使用了以下解决方法。
[UILabel appearanceWhenContainedIn:[UITextField class], nil] setTextColor:[UIColor darkGrayColor]];
但后来我知道了另一个错误,上面的工作完成了,但它也将所有其他标签的颜色重置为默认黑色。然后我必须将 UILabel 类作为子类,并在我的视图中的所有其他标签中使用我的类。
【讨论】:
快速修正语法:
[[UILabel appearanceWhenContainedIn:[UITextField class], nil] setTextColor:[UIColor darkGrayColor]];
【讨论】: