UI整理-----part6--页面间的传值

1.使用block进行页面传值:

(1)首先,block的本质是一个指向结构体的指针,我们可以把它当做Objective—C的一个匿名函数,block允许开发者在两个对象之间将任意的语句当做数据进行传值,block的实现具有封闭性(closure),而又能很容易获取上下文的相关信息。

(2)

block的定义声明和调用(回调)在一个界面(界面A),block的实现在另一界面(界面B)

        <1>首先,是block在界面A的定义声明,第一行代码是为要声明的Block重新定义了一个名字MyBlock,第四行是定义的一个Block属性

,第五行是一个在第一个界面传进来一个Block语句块的函数,不用方法也可以,不过加上会减少代码的书写量

        <2>在B中实现带有block的方法

        <3>在A中回调带有block的方法

2.使用代理进行页面传值:

(1)原理是A在什么都没有的时候跳转到B,B在跳回到A的时候传递参数和数据。

(2)核心是传值的页面要把被传值的页面设成代理

(3)A页面创建实现协议成为B的代理,B将要结束模态视图的时候,通过相应方法将参数进行c

原文地址:https://www.cnblogs.com/8023huihui/p/5209767.html