iPhone UITextField - 更改占位符字体和文本颜色

Har*_*ran 2 objective-c uitextfield ios

我有一个UITextField我需要更改Placeholder字体和颜色的地方,我在drawRect方法中调用下面的方法,

-(void) setFontColorForPlaceHolder
{
    for(id obj in [[self baseScrollView] subviews])
    {
        if([obj isKindOfClass:[UITextField class]])
        {
            [obj setAttributedPlaceholder:[[NSAttributedString alloc]initWithString:[obj placeholder] attributes:@{
                NSFontAttributeName:kFutura_Medium_14 ,NSForegroundColorAttributeName:[UIColor redColor]
            }]];
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这里的颜色正在变化但是FONT没有设置.这是什么问题setAttributedPlaceholder.

kra*_*vil 6

我在iOS 7.1中测试,发现它NSFontAttributeName没有对UITextField占位符文本做任何事情.

但是,当我更改UITextField本身的字体时,占位符文本字体也会更改:

aUITextField.font = [UIFont fontWithName:@"HelveticaNeue-Thin" size:20.0f];
Run Code Online (Sandbox Code Playgroud)