84669 personnes étudient
152542 personnes étudient
20005 personnes étudient
5487 personnes étudient
7821 personnes étudient
359900 personnes étudient
3350 personnes étudient
180660 personnes étudient
48569 personnes étudient
18603 personnes étudient
40936 personnes étudient
1549 personnes étudient
1183 personnes étudient
32909 personnes étudient
在学习iOS的过程中,困扰我的一个问题就是 控制器页面之间的传值问题,例如顺传、逆传。
传值的方式有 代理传值、block传值、还有通知传值,有哪位好心大神能给讲一讲。
走同样的路,发现不同的人生
La transmission séquentielle transmet généralement la valeur directement
Transfert de valeur par procuration
A<B-Delegate>//A实现B协议 B //声明协议和方法 声明代理属性 Delegate->(methodFromB:(B)b value:(obj)obj)//B声明协议方法 property-weak-deleagte //在A中 B.delegate = A; //当B中发生传值时调用 B [self.delegate methodFromB:self value:obj] //因为 self.delegate = A //A中执行定义的协议方法接收到值 -methodFromB:(B)b value:(obj)obj
valeur de bloc
A //A中实现B的block的代码块 B.block = ^(obj){ }; B//声明代码块 typedef BBlock property-block //当B中调用 self.block(obj); 就会调用A中以实现的代码块实现传值
Valeur de notification
A中接收通知 NotificationCenter.addobserve(A).name("NAME").selector(noti:) -noti:(noti)noti{ noti.obj//接收到值 } B中发送通知 NotificationCenter.postName("NAME").obj(obj)
Valeur de transmission d'une seule instance
//用单例中的值更新A的值 A.property = global.singleton.property; //B中值改变 把值赋给单例 global.singleton.property = B.property;
La transmission séquentielle transmet généralement la valeur directement
Transfert de valeur par procuration
valeur de bloc
Valeur de notification
Valeur de transmission d'une seule instance