小桑博客

如果渡不过这不可渡的海,将成为这海中捞不起的沙

About Delegete

rootviewcontroller 上增加了一个tableviewcontroller,tablecell里有一个view,view里又有一个button

view大于2层就很难受了,delegate传来传去的。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
view1:
  button - click
      -(void)click_event_callback;
  
tableviewcontroller
  view1.delegate = self;
  
  -(void)click_event_callback;
  
  
rootviewcontroller
  tableviewcontroller *tbvc.delegate = self;
  
  -(void)click_event_callback;
  

这样做的原因是点击button的时候,需要在rootviewcontroller.navagationcontroller中push一个viewcontroller,而tableviewcontroller是没有navagationcontroller的。

我们通常设置delegate

@property(nonatomic,assign,readwrite) id<*Protocol> _delegate;

用assign是防止产生交替dealloc死锁内存问题。

Comments