写一个委托的interface

所谓的委托也就是我们常说的代理(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;

}

 

posted @ 2016-08-17 17:42  喵~喵~喵~  阅读(1064)  评论(0编辑  收藏  举报