我有一种奇怪的行为。
我在UITextField
上设置了边框:
- (void)viewDidLoad
{
self.usernameTextField.layer.borderColor = [[UIColor grayColor] CGColor];
self.usernameTextField.layer.borderWidth = 1.0f;
}
并且在执行登录时我在窗口上显示MDProgressHud
(因此会自动禁用下面视图上的所有按钮和手势)。
AppDelegate * app = [[UIApplication sharedApplication] delegate];
self.hud = [[MBProgressHUD alloc] initWithView:app.window];
[app.window addSubview:self.hud];
因此,当显示hud时,边框消失......
关于事业的想法?
答案 0 :(得分:0)
旧问题,但我的边框颜色变化问题。 @ duci9y建议的KVO对解决出错的问题非常有用:
[textField addObserver:self forKeyPath:@"layer.borderColor" options:(NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld) context:nil];
添加观察者:
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context {
if([keyPath isEqual:@"layer.borderColor"]) {
NSLog(@"Border colour changed");
}
}
我在NSLog上放了一个断点,发现了问题。