iOS开发之swift与OC混编出现的坑,oc中不能对swift的代理进行调用,不能访问swift中的代理,swift中的回调方法

时间:2022-05-07 23:04:20

1. Swift与oc混编译具体怎么实现,这儿我就不重复讲出了,网上有大把的人讲解。

2. 在swift与OC混编的编译环境下, oc类不能访问swift创建类中的代理?

解决方法如下:

iOS开发之swift与OC混编出现的坑,oc中不能对swift的代理进行调用,不能访问swift中的代理,swift中的回调方法

在代理的头部加上 @objc(代理名字),这样就在外部就可以访问了,如下图。 然后就和oc中的代理一样,写上协议方法,就可以进行你想要的操作了。

iOS开发之swift与OC混编出现的坑,oc中不能对swift的代理进行调用,不能访问swift中的代理,swift中的回调方法

3. swift中的回调方法介绍:

1. 通过代理 ,写法大家可以看上面的两张图片,和oc代理差不多。

2. 通过闭包来实现oc中代码块(Block)的方法,来进行代码回调

2.1 定义  (swift类)

iOS开发之swift与OC混编出现的坑,oc中不能对swift的代理进行调用,不能访问swift中的代理,swift中的回调方法

2.2 调用   (swift类)

iOS开发之swift与OC混编出现的坑,oc中不能对swift的代理进行调用,不能访问swift中的代理,swift中的回调方法

2.3 具体回调处:(OC - 类)

iOS开发之swift与OC混编出现的坑,oc中不能对swift的代理进行调用,不能访问swift中的代理,swift中的回调方法