我是靠谱客的博主 醉熏吐司,最近开发中收集的这篇文章主要介绍RAC rac_signalForControlEvents Button方法多次触发的问题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

项目中使用了RAC, 使用过程中遇到了很多坑.

其中一个比较普遍的就是:
在cell中使用之后,在cell重用的时候, 每次刷新一遍cell, button就会多触发一次, 造成button的多次触发;
若跳转到另一个页面, 就会多次创建VC, 造成冗余及影响.

解决方法:

通过takeUntil:someSignal来终止cell.button之前的signal了:
takeUntil :someSignal的作用是当someSignal sendNext时,当前的signal就sendCompleted,someSignal就像一个裁判,哨声响起就意味着比赛终止:

添加takeUntil: 方法就可以防止多次调用触发了.

[[[cell.loginButton rac_signalForControlEvents:UIControlEventTouchUpInside] takeUntil:cell.rac_prepareForReuseSignal] subscribeNext:^(__kindof UIControl * _Nullable x) {
   
}];

最后

以上就是醉熏吐司为你收集整理的RAC rac_signalForControlEvents Button方法多次触发的问题的全部内容,希望文章能够帮你解决RAC rac_signalForControlEvents Button方法多次触发的问题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(58)

评论列表共有 0 条评论

立即
投稿
返回
顶部