这是一个创建于 3544 天前的主题,其中的信息可能已经有所发展或是发生改变。
我把高德地图的 delegate 方式的回调封装成了 block 方式,但是碰到一个问题,因为完成的 block 我是通过 request 方法传进来的,而 delegate 回调方法是另一个,所以要在 delegate 回调方法中使用传入的 block,我只能把 block 用一个成员变量保存起来,回调的时候通过这个成员变量block出去,这样导致的问题就是我同时发起多个请求只会有一个返回。大家有什么方案帮我解决这个问题么?求救
5 条回复 • 2015-02-03 08:08:35 +08:00
|
|
1
mmoaay 2015-02-02 16:54:03 +08:00
…今天大家都不在啊…
|
|
|
2
soulgain 2015-02-02 17:18:40 +08:00 1
存一个block的set咯,在SDK的delegate里调用这些blocks。 不过楼主想清楚这是你想要的效果吗?
|
|
|
3
mmoaay 2015-02-02 22:59:16 +08:00 via iPhone
@ soulgain 我想过这个,不过觉得数组实现block之间就有耦合了,觉得不太完美
|
|
|
4
mmoaay 2015-02-03 08:07:26 +08:00 via iPhone
因为高德地图的request在delegate回调的时候有返回的,所以我的想法是把block用runtime机制加到request上传过去,这样合适么?
|
|
|
5
mmoaay 2015-02-03 08:08:35 +08:00 via iPhone
或者是继承每个request,在里面加block,但是高德的request很多,继承有点麻烦
|