当我们发起数据请求后,有时候需要在另外一个界面上显示改数据。。。这时候我们就需要对数据进行传值。
1.利用代理方式。。。。在数据请求完的地方写入(代理的前奏我就不重复了。。不懂得同学自己去复习一下)
if (_delegate&&[_delegate respondsToSelector:@selector(initWithMyData:)])
{
//处理事件
}
在界面更新类里面
-(void)initWithMyData:(NSData*)myData
{
//界面更新
}
2.利用NSNotificationCenter.....在界面更新的那个类里面写入
//设置通知中心
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(test:)
name:@"MR.Zhang" object:nil];
同时写入方法:
- (void)test:(NSNotification*)notify
{
//UI界面更新
}
在数据请求类里面。。。。数据请求完后写入
[[NSNotificationCenter defaultCenter] postNotificationName:@"MR.Zhang" object:object];
以上2种方法。。。如果是多个界面对一个界面有影响的话。。。。建议选用NSNotificationCenter。。而且其代码量也比较小。。。。
心得:无论是哪一种方法都需要自己去实践才会得出其利弊。。。。