第一种方法
NSAttributedString * attributed = [[NSAttributedString alloc]initWithString:@"手机号" attributes:@{NSForegroundColorAttributeName:[UIColor grayColor]}];
self.phoneField.attributedPlaceholder = attributed;
//也可以这么写
NSMutableAttributedString * attributedString = [[NSMutableAttributedString alloc]initWithString:@"手机号"];
[attributedString addAttribute:NSForegroundColorAttributeName value:[UIColor grayColor] range:NSMakeRange(0, 3)];
self.phoneField.attributedPlaceholder = attributedString;
第二种方法
自定义textfield重写drawplaceholderrect方法
- (void)drawPlaceholderInRect:(CGRect)rect
{
//rect 根据自己的需求调整
[self.placeholder drawInRect:rect withAttributes:@{NSForegroundColorAttributeName:[UIColor grayColor]}];
}
第三种方法
###利用运行时
//取出_palceholderLabel变量
UILabel * palceholderLabel = [self valueForKeyPath:@"_palceholderLabel"];
palceholderLabel.textColor = [UIColor grayColor];
//或者直接这样
[self setValue:[UIColor grayColor] forKeyPath:@"_palceholderLabel.textColor"];
网友评论