UITextField:更改已禁用文本字段的外观

时间:2014-01-21 13:36:39

标签: ios ios6 ios7 uitextfield

我想改变禁用文本字段的外观,即文本和背景颜色 - 是否有一种简单合法的方法来实现这一目标?

2 个答案:

答案 0 :(得分:17)

您可以继承您的UITextfield并覆盖enabled属性,如此

- (void)setEnabled:(BOOL)enabled
{
    [super setEnabled:enabled];
    // Do your customization here, eg:
    self.backgroundColor = [UIColor blackColor];
}

Swift版本:

override var isEnabled: Bool {
    willSet {
        backgroundColor = newValue ? UIColor.white : UIColor.black
    }
}

答案 1 :(得分:1)

对于仅外观,UITextField类具有名为disabledBackground的属性,该属性在禁用时将UIImage对象作为背景图像。同样,background属性用于其他情况。