所谓的委托也就是我们常说的代理(delegate)
情景:A B 两个页面。 Apush到B页面 B页面中有三个按钮分别代表红色、黑色、蓝色。触发点击按钮后 回到A页面用于改变A页面的背景颜色
多余代码在此不过多解释,主要代码如下 :
B.h
@protocol changeBackColorDelegate <NSObject>
-(void)changeAbackColor:(UIColor *)color;
@end
@interface B:UIViewController
@property(nonatomic,assign)id<changeBackColorDelegate>delegate;
@end
B.m
按钮点击事件
-(void)btnClick
{
if(self.delegate && [self.delegate respondsToSelector:@selector(changeAbackColor:)])
{
[self.delegate changeAbackColor:[UIColor redColor]];
}
}
A.m 首先引入B.h 然后再interface中引入delegate
-(void)changeAbackColor:(UIColor*)color
{
self.view.backgroundColor=color;
}
时间: 2024-10-31 17:19:21