传值方式
1 初始化传值:(顺传)
自定义初始化方法在 UI中,一般在一个界面推送另一个界面的时候,因此要是想用想到既然要用自定义初始化方法,至少要在该方法中去创建该对象.所以这种方式不适合回调.
2 属性传值:(顺传)
3 单例传值:(顺传和逆传都行)
单例的好处就在于只要创建一次,其余任何时候使用的时候使用的都是同一个,所以很多时候用户的一些信息存储到单例中,这样就不需要进行多次传值了,只需要再次创建单例就行了.
4 AppDelegate传值:
5 通知传值:(顺传和逆传)
6 代理传值:(顺传和逆传) (控制器由 AàB)
B.h 中:制定协议 设置代理属性
B.m 中:在需要代理做事情时让代理执行协议和方法.(注:先判断再执行防止崩溃)
A.m 中:设置代理 遵守协议 实现代理方法
7 block 传值:(顺传和逆传)(在 B 中声明和调用 在 A 中实现)
8 NSUserDefault或文件传值:(顺传和逆传)
[[NSUserDefault standardUserDefault] objectForKey:];
倒传需要在 ViewWillAppear 和 ViewDidAppear.