码迷,mamicode.com
首页 > 移动开发 > 详细

转:iOS通知中心

时间:2014-05-24 09:57:18      阅读:260      评论:0      收藏:0      [点我收藏+]

标签:class   c   tar   http   a   get   

转:IOS Notification 通知中心

:NSNotification
1.     通知中心概述
通知中心实际上是在程序内部提供了消息广播的一种机制。通知中心不能在进程间进行通信。实际上就是一个二传手,把接收到的消息,根据内部的一个消息转发表,来将消息转发给需要的对象。通知中心是基于观察者模式的,它允许注册、删除观察者。
一个NSNotificationCenter可以有许多的通知消息NSNotification,对于每一个NSNotification可以有很多的观察者Observer来接收通知。
2.     通知中心两个重要的类
NSNotificationCenter:这是iOS中通知中心的灵魂,由该类实现了观察者模式,并给开发者提供了诸如注册、删除观察者的接口,我们可以通过一个单例来获得它的实例(注,一个程序内部只有一个NSNotificationCenter实例对象)。
NSNotification:这是消息携带的载体,通过它,可以把消息内容传递给观察者。其中:name对应消息名称标示。object一般是发送者本身、dictionary则是传递的消息内容。
3.     通知中心如何使用
通过下图,我们可以看出,通知中心的使用可以分为4个步骤。
这里需要额外提一点的是:发送消息不仅仅可以有用户发起,也可以是系统发起。
当我们注册了某个消息的观察者后,如果有了对应的消息,则观察者会收到相应的消息,并展开处理。这里需要注意的是,当使用完消息之后,不想在接收到消息,则需要把观察者移除,否则会出现错误。

注册通知:即要在什么地方接受消息
[[NSNotificationCenter defaultCenter]  addObserver:self selector:@selector (mytest:) name:@" postData " object:nil];
参数介绍:
addObserver:观察者,即在什么地方接收通知;
selector:收到通知后调用何种方法,即回调函数;
name:通知的名字,也是通知的唯一标示,编译器就通过这个找到通知的。
发送通知:调用观察者处的方法。
[[NSNotificationCenter defaultCenter] postNotificationName:@" postData " object:searchFriendArray];
 

转:iOS通知中心,布布扣,bubuko.com

转:iOS通知中心

标签:class   c   tar   http   a   get   

原文地址:http://www.cnblogs.com/NatureZhang/p/3748474.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!