一种简单粗暴设置delegate的方法

ios开发经常会遇到协议的使用,在不同的视图间、对象传值或穿事件,下面主要记录视图对象怎么设置代理。


首先区分一下协议和代理的概念:IOS开发之协议和代理

http://mobile.51cto.com/hot-404773.htm


使用协议的一般步骤:iOS 之美:iOS Delegate 使用五步曲

http://leopard168.blog.163.com/blog/static/168471844201307112149221/


通常,一个delegate的使用过程,需要经过五步:

1.     创建一个 delegate;

2.    委托者声明一个delegate;

3.    委托者调用delegate内的方法(method);

4.    被委托者设置delegate,以便被委托者调用;

5.    被委托者实现Delegate 所定义的方法。

第1、2、3步可能问题都不大,第4步代理的设置有时候会因为视图的复杂关系而不能快速地设置正确,如果你使用可视化的故事板设计视图,这个问题就容易解决了。

解决方法:使用storyboarID

在storyboard(故事板)上每个viewcontroller(视图控制器)都有storyboardID这个属性

    ctroller = [[UIStoryboard storyboardWithName:@"storyboardName" bundle:nil] instantiateViewControllerWithIdentifier:@"ctrollerName"];
    delegate = ctroller;




发布了22 篇原创文章 · 获赞 8 · 访问量 4万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章