1, 声明一个全局的通知,在 class 外面
let NotifyChatMsgRecv = NSNotification.Name(rawValue:"notifyChatMsgRecv");
2, 开始 接收类 中 添加 监听和 接收 处理 方法
class ViewController: UIViewController{ override func viewDidLoad() { super.viewDidLoad() //添加监听 NotificationCenter.default.addObserver(self, selector:#selector(didMsgRecv(notification:)),name: NotifyChatMsgRecv, object: nil); } //接收到通知的处理 func didMsgRecv(notification:NSNotification){ print("didMsgRecv: \(notification.object)"); } // }
3, 发送通知
NotificationCenter.default.post(name:NotifyChatMsgRecv, object: "123", userInfo: nil)
相关推荐
3. **封装数据到 NSNotification**:通过发布和监听通知,可以在不直接耦合的情况下传递数据。 4. **使用 segue**:在故事板中,可以通过`prepare(for:sender:)`方法在segue触发时传递数据。 5. **模型对象**:共享...
在逆向传值的场景下,ViewController B可以发送一个NSNotification,而ViewController A作为观察者,监听这个通知并接收数据。 实现步骤如下: 1. **注册观察者**:在ViewController A的`viewDidLoad`方法中,我们...
本文将深入探讨五种主要的传值方法:属性传值、代理传值、Block、通知(NSNotification)以及单例(Singleton)。每种方法都有其适用场景和优缺点,开发者需要根据实际需求选择合适的方式。 1. **属性传值**: ...
在iOS应用开发中,"通知传值"是一种常见的组件间通信方式,特别是在不需要明确依赖关系或者避免强耦合的情况下。本示例“通知传值demo”旨在演示如何使用苹果的Notification Services来实现在应用程序的不同部分之间...
在这个名为"ios-三种类型的传值:协议,闭包,通知.zip"的压缩包中,作者提供了一个小型的示例项目(PassValue),旨在介绍如何在iOS应用中使用三种不同的方法进行值传递:协议、闭包和通知。下面将详细解释这三种...
在这个“ios-swift导航栏控制器传值,简单明了,新手可以参考”的项目中,我们主要讨论的是如何在Swift中利用UINavigationController进行数据传递,特别是对于初学者来说,这是一个非常实用且基础的话题。...
子控制器可以通过发送NSNotification来通知父控制器。首先,父控制器需要注册监听特定的通知,然后子控制器在需要的时候发布这个通知,附带上要传递的数据。这种方式适用于多控制器间的数据传递,但可能造成订阅者...
var receivedDataClosure: ((String) -> Void)? func sendData(data: String) { receivedDataClosure?(data) } } ``` 4. **NSUserDefault** 或 **UserDefaults**:对于跨多个界面或持久化存储的数据,可以...
- **Notification**:利用NSNotification可以在应用程序的任何地方广播消息,多个对象可以监听同一通知。 - **KVO(Key-Value Observing)**:观察者可以监控特定对象属性的变化,并在变化时收到通知。 - **...
5. **通知**:通知中心(NSNotification)是另一种解耦的方式,它允许对象在不知道彼此的情况下进行通信。一个对象(称为发布者)发送一个通知,其他感兴趣的对象(称为观察者)可以注册接收这个通知并执行相应操作...
这些消息可以是简单的事件通知,也可以包含额外的数据,即所谓的“传值”。 **创建Notification** 创建一个Notification通常包括以下几个步骤: 1. **定义Notification Name**:每个Notification都有一个唯一的...
在反向传值中,子控制器可以发布一个通知,父控制器作为观察者来接收这个通知: ```swift // 子控制器发送通知 let notificationName = NSNotification.Name(rawValue: "ChildViewControllerDidFinish") ...
8. **Notification**: 使用NSNotification中心,发布通知并由接收者订阅,适合不直接关联的视图控制器间传递数据。 **示例代码(Swift)** ```swift // 页面跳转 let storyboard = UIStoryboard(name: "Main", ...
然而,在某些情况下,如果A界面已经存在并且我们希望更新它的数据,而B界面是在A界面之后被打开的,使用Notification(通知)进行反向传值就显得尤为适用。 首先,我们需要了解iOS中的Notification机制。...
在iOS中,`NSNotificationCenter` 是苹果提供的一个类,用于广播消息,即发布通知和接收通知。当一个对象(发布者)想要向其他对象(观察者)发送信息,但不关心谁会接收到这些信息时,可以使用Notification。 1. *...
NSNotification是Foundation框架提供的全局通知系统,允许对象在特定事件发生时广播消息。在UI界面传递值的场景下,发送方可以发布一个通知,包含要传递的值,而接收方注册监听这个通知,接收到后进行处理。这种方式...
4. **使用Notification**:通过`NSNotification`发送和监听通知,也是一种传递数据的方式,但这种方法通常用于视图层级关系不明确或者多个视图间通信的场景。 三、视图间的相互切换 1. **dismiss模态视图**:当...
描述中提到的“notification”是指另一种iOS中的通信机制——`NSNotification`,它支持对象间广播式的通知,允许一个对象向系统发布一个通知,而多个对象可以监听并响应这个通知。与`delegate`不同,`NSNotification...