是否有一种简单的方法来禁用UITextField
代码?
我的应用程序有12个UITextField
默认情况下全部打开,但是当我的细分控制中检测到更改时,我想禁用其中一些,UITextField
具体取决于用户选择的细分.
只需要知道如何禁用它或使其不可编辑?
谢谢
在Objective-C中:
textField.enabled = NO;
在Swift中:
textField.isEnabled = false
参考:UIControl.isEnabled
如果您还想表明文本字段已禁用,则应添加更多代码:
如果使用UITextBorderStyleRoundedRect,则只能使文本变灰:
textField.enabled = NO; textField.textColor = [UIColor lightGrayColor];
如果使用任何其他样式,您也可以灰显背景:
textField.enabled = NO; textField.backgroundColor = [UIColor lightGrayColor];
当你有多个文本字段时,这将是最简单的:
在viewDidLoad中:(仅为不应编辑的文本字段设置委托.
self.textfield.delegate=self;
并插入此委托函数:
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField{ return NO; }
而已!