您的位置:首页 > 产品设计 > UI/UE

UIButton根据不同的状态设置layer

2015-04-19 23:11 344 查看
这需要用到KVO,监听button的highlighted属性的变化,在监听回调里根据监听到得属性值设置layer

设置监听如下

[button addObserver:self forKeyPath:@"highlighted" options:NSKeyValueObservingOptionNew|NSKeyValueObservingOptionOld context:NULL];

监听回调如下

-(void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context { UIButton * bt = (UIButton* )object;

if([keyPath isEqualToString:@"highlighted"])

{

if(bt.state == UIControlStateNormal) {

bt.layer.bordColor = [UIColor redColor].CGColor;

} else{

bt.layer.bordColor = [UIColor black].CGColor;

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: