您的位置:首页 > 移动开发 > IOS开发

多视图的参数传递

2016-05-28 11:00 183 查看
常用的参数传递方法有以下几种:

一、采用代理模式

1、定义协议,协议中定义传参时需要的方法;

2、目标视图控制器定义一个代理对象;

3、源视图控制器实现协议并在初始化目标控制器时指定目标控制器的代理为其自身;

4、需要传参时在目标窗口调用代理的协议方法。

二、采用iOS消息机制

三、通过NSDefault存储(或者文件、数据库存储等)

四、通过AppDelegate定义全局变量(或者使用UIApplication、定义一个单例类等)

某个类只产生一个对象,且是一个全局对象,以后每次创建该类对象时,只会得到第一次创建的那个类对象。


创建单例类时,需注意:

1、首先必须创建一个全局实例,通常存放在一个全局变量中,此全局变量设置为nil

2、需要重写+allocWithZone:方法,防止通过标准的alloc方式创建新的实例

3、需要重写-copyWithZone方法,防止通过copy方法得到新的实例

4、需要重写-mutableCopyWithZone:方法,防止通过copy方法得到新的实例

五、通过控制器属性传递
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ios