委托声明的关键字
传值的方式有很多种,比如可以通过参数直接传值,或者用通知也可以,附件中有委托的方式
#import "ViewController.h"
AppDelegate *appDelegate = [[UIApplication sharedApplication] delegate];
appDelegate.window.rootViewController = (UIViewController *)self.detailViewController;
UIViewController *viewCtrl = (ViewController *)appDelegate.window.rootViewController;
nsstring *url = viewCtrl.theurl.text;
以上代码生效的条件是,ViewController是window的根视图控制器,不知道你明不明白我的意思。
要是不明白,就再问吧。
我讲点简单点的流程。
明确以下:1.代理是一个函数指针的集合(一个代理包含一个或者多个函数)。2.代理的调用,本质是函数回调。3.大多数应用背景是。A中某些事情只有B才能处理,A力所不及。
代理简单使用流程。(这里只有理论,代码网上到处都是,按照这个流程走,帮你梳理思路)。
定义一个代理。
在A的成员变量中声明这个代理。B继承这个代理,并实现这个代理中的函数。
在A的初始化函数。比如init,viewdidload中,把B实例化,并且,把B的实例赋值给A中代表代理的成员变量(通常直接叫做delegate).
在A中某个函数xx中,需要用户B的帮助。就调用delegate.xx的函数。