这个问题折腾了我几天。。这就是初学要付出的代价吧。。。我的需求很简单,就是在不同的页面间传递值,a页面跳转到b页面,b页面作出选择后需要把值传递给a,开始用delegate,瞎折腾了一气没有成功,后来了解到可以通过NSNotification传值,测试后成功,非常好用,具体代码如下:
先在b页面合适的位置定义一个notification,然后发送notification:
NSNotification* notification = [NSNotification notificationWithName:@"MyNotification" object:self];
[[NSNotificationCenter defaultCenter] postNotification:notification];
然后在a页面合适的位置接收:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(aNotificationHandler:) name:@"MyNotification" object:nil];
定义一个方法处理notification:
- (void)aNotificationHandler:(NSNotification*)notification
{
MyNotifyingClass* ob = [notification object];
... app specific stuff
}
以上代码参考国外博客中的写法,原文链接如下:
http://blog.isotoma.com/2009/11/on-objective-c-delegates-and-nsnotification-objects/
分享到:
相关推荐
在iOS开发中,数据在不同UI视图控制器(UIViewController)之间的传递是常见需求,尤其是在复杂的多页面应用中。本文将详细解析《iPhone窗口之间传递数据》这一主题,深入探讨多种有效的数据传递方法,帮助开发者更...
在iOS开发中,获取URL是常见的任务,尤其对于iPhone应用来说。这可能涉及到与服务器通信、数据下载或者实现深层链接等功能。以下是一些关于“iPhone URL获取”相关的知识点: 1. **URL对象**:在iOS中,URL...
9. **故事板(Storyboard)**:在故事板中,开发者可以将多个屏幕连接起来,形成应用程序的流程,同时也可以设置 segue 来处理页面间的跳转。 10. **MVC(Model-View-Controller)**:这是一种设计模式,将应用程序...
在现代的Swift语言中,虽然语法有所不同,但依然保留了面向对象的特性,比如类、继承、协议等,这些都是“Object”的体现。开发者可以创建自定义的对象来代表现实世界中的实体,实现业务逻辑,从而提高代码的组织性...
在微信小程序中,开发一款仿iPhone通讯录的自定义选择组件是一项常见的需求,尤其是在构建具有原生体验的应用时。这个组件通常需要实现的功能包括:滑动选择、分组展示联系人、搜索过滤以及点击选中等。下面我们将...
- **消息传递**:Objective-C通过消息传递实现方法调用,这是其与其他面向对象语言的重要区别之一。 - **类与对象**:Objective-C中的类和对象遵循传统的面向对象原则。 - **协议与委托**:协议定义了一个接口,而...
### iPhone中部分控件的应用及关键技术点解析 #### 一、项目搭建与基本控件使用 **1. 创建第一个程序** - **项目创建**: 在Xcode中新建一个iOS项目,并选择“Single View App”模板。这将自动生成一个包含`.h`、`...
第一个主题关于在Worklight iPhone App中打开网站时WL对象未定义的问题。这指的是开发者在使用IBM Worklight(现在称为IBM MobileFirst Platform Foundation)时遇到的一个具体问题。Worklight是一个移动应用开发...
- 了解类、对象、消息传递等基本概念。 - 学习关键字如`@interface`, `@implementation`, `@property`, `@synthesize`等的用法。 - 掌握动态类型和运行时机制在Objective-C中的作用。 2. **模型-视图-控制器...
书中会详细介绍其语法特性,如消息传递、类别(Category)、协议(Protocol)等,并通过实例展示如何创建对象和实现面向对象编程。 2. **Cocoa Touch框架**: Cocoa Touch是iOS应用的UI构建基石,包括UIKit、...
这可能包括数据库操作,如连接到SQL Server或MySQL等数据库,执行SQL查询以获取iPhone6不同型号的库存信息。C#还可以实现API接口,供JavaScript调用,传递请求和返回数据。 JavaScript(JS)是前端的主要语言,负责...
SPDY (Speedy) 是一种由 Google 开发的网络协议,旨在提高网页加载速度,降低延迟,优化用户在互联网上的体验。它通过压缩头部信息、多路复用连接以及优先级排序等技术,显著提高了HTTP协议的效率。对于iPhone应用...
1. **导航控制器与TabBarController**:这两种控制器分别用于实现页面间的层级导航和平行导航。 2. **网络编程**:利用URLSession进行HTTP请求,或使用第三方库如Alamofire简化网络操作。 3. **动画与手势识别**:...
本书可能详细介绍了这两种语言的基础知识,包括类、对象、继承、消息传递等面向对象编程概念。此外,它还可能涵盖了iOS SDK中的关键框架,如UIKit,它是构建用户界面的主要工具包,包括各种控件、事件处理和动画效果...
- Objective-C是C语言的超集,它引入了面向对象的概念,如类、对象、继承、多态和消息传递。 - `#import` 语句用于引入头文件,头文件中通常包含了类定义和接口声明。 - `@interface` 和 `@implementation` 分别...
《AppStore掘金iPhone SDK应用程序开发》是一本深入探讨如何利用iPhone SDK进行应用程序开发的专业书籍。本书旨在帮助开发者在Apple的AppStore中找到成功的路径,通过掌握iPhone SDK的关键技术和最佳实践,实现创新...
3. **消息传递(Message Passing)**:Objective-C通过发送消息来调用对象的方法,这与传统的函数调用不同。 4. **协议(Protocol)**:类似于接口,定义了一组方法签名,允许类间通信,实现多态性。 5. **分类...
在iOS开发中,iPhone的触摸事件处理是用户体验设计的核心部分。`iPhone-Touch`这个主题主要涉及了如何在iPhone的应用程序中捕捉并响应用户的触摸操作,包括手势识别、触摸序列跟踪以及与用户交互的多种方式。以下是...
在iOS开发中,Notification是一种常见的进程间通信方式,用于在应用程序的不同组件之间传递信息。在这个例子中,我们探讨的是如何利用Notification在两个页面(页面A和页面B)之间进行数据的传递,特别是在页面B中...
在iOS开发中,尤其是针对iPhone应用的开发,与用户进行有效的交互是至关重要的。这篇文章将深入探讨如何在iPhone应用程序中处理基本的用户交互,包括事件处理、输出口使用以及关闭键盘的操作。 首先,我们来谈谈...