问题标签 [reactive-cocoa]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
reactive-programming - 如何使用 ReactiveCocoa 对传入信号进行两级排序?
我一直在使用 ReactiveCocoa 工具,遇到了一个有趣的问题。我可以设想任何数量的丑陋、有状态的解决方案,但我非常有信心有一种优雅、实用的方式,无论出于何种原因,它都不会在我的脑海中实现。也许你能帮上忙!
这里的输入信号是两部分字符串,例如"<letter>,<number>"
. 所需的排序规则是,对于给定的字母,输入值应按顺序出现在输出中<number>
(即A,2
不应出现在之前A,1
),并且所有字母的<letter>
输出不应违反字母顺序。(即,B
在出现至少一个以 开头的字符串之前,不应出现以 开头的字符串A
。) 除了这些规则所规定的以外,期望事物将按照它们提交到输入的顺序到达输出。
考虑以下代码:
还应该“急切地”产生输出。如果我必须等到输入信号完成才能看到输出,这是没有用的(当然,除非排序规则规定是这种情况,即如果A,1
最后出现)
有任何想法吗?
ios - What is the best way to combine RACCommands into a common result?
Using ReactiveCocoa 2.0, is there a better way to do the following, without having to materialize/dematerialize and still being able to capture errors from any of the 3 signals, without duplicating code?
There are 3 login buttons. Each returns a signal corresponding to an asynchronous "login" API call. Once those finish, they return user objects, errors, and/or completion.
cocoa - 如何在 ReactiveCocoa 中的信号序列之间创建延迟?
我有三个信号,我想按顺序评估它们,它们之间有一秒的延迟。
这个片段做了我想要的,但它很丑:
它打印出来:
objective-c - 使用值和当前日期过滤 ReactiveCocoa 信号
我有两个Event
对象信号。Event
对象有一个date
属性,该属性设置为事件创建的日期。这两个信号在创建时发送事件。
我想创建第三个信号:
- 当
event2.date
在 的任一侧落在 1 秒内时event1.date
,发送一个包含两个事件的元组 - 当最近的 1 秒后过去
event1.date
,并且最近event2
的date
不在有效范围内时,发送一个仅包含的元组event1
我正在使用combineLatest:
andfilter
创建一个信号,该信号使用第一个条件过滤元组:
如何制作包含这两个标准的信号?
ios - 将 ReactiveCocoa 中的信号组合成一个新的信号,当所有变化时触发
我正在尝试学习 ReactiveCocoa,并且正在编写一个简单的 Space Invaders 克隆,基于 Ray Wenderlich 教程。最近在开发过程中,我遇到了一个我无法解决的问题。基本上我有两个信号:
- 点击手势信号
- 每秒触发的定时序列
我想要实现的是将这些信号组合成一个新信号,当两个信号都发生变化时触发:这可能吗?我看到了 combineLatest 方法,但是只要任何信号发生变化,就会执行该块。
我想要的伪代码是:
可能我可以通过其他方式获得相同的结果,或者这不是预期的行为或 ReactiveCocoa,但此时我想知道我是否处于正确的反应轨道。
reactive-cocoa - 如何取消使用 RACScheduler 安排的重复工作?
我已经安排了与- (RACDisposable *)after:(NSDate *)date repeatingEvery:(NSTimeInterval)interval withLeeway:(NSTimeInterval)leeway schedule:(void (^)(void))block;
. 如何取消它?
据我从描述中了解到,我应该使用RACDisposable*
从这个方法返回的。我应该只调用- dispose
这个对象吗?是否应该以某种方式配置取消?
谢谢
ios - Reactive Cocoa - UITextView 的 rac_textSignal 在以编程方式设置文本时不会被调用
我正在实现一个聊天 UI,并使用 Reactive Cocoa 在用户键入时调整聊天气泡的大小。目前,我正在根据 textview 的rac_textSignal
. 一切都很好 - 除了一点:当用户发送消息时,我以编程方式清除文本字段:
...但文本视图rac_textSignal
没有激活。我听说这是 ReactiveCocoa 的一个特性——但是构建它的正确方法是什么?我是否需要一个 NSString 来保存currentlyTypedString
,并在该字符串更新时驱动 UI 更改?
ios - 指示属性何时返回其初始值的 RACSignal
我有一个属性 ,recording
如果YES
aUILongPressGestureRecognizer
处于状态UIGestureRecognizerStateBegan
或UIGestureRecognizerStateChanged
.
如何创建一个仅在recording
返回NO
而不是初始值时触发的信号?
ios - 在不知道参数数量的情况下从 RACTuple 中减少值
我有一个 IBOutletCollection (TextFields)。我可以动态收集所有 rac_textSignals,但现在我想在不知道 RacTuple 将有多少参数的情况下减少这些信号的值(出口集合可能会有所不同)。
如何做到这一点?我找不到使用 combineLatest:reduce 或 reduceEach: 方法的方法。
提前致谢。
ios - 使用 Reactive Cocoa RACSignal 启用 UIButton
我UIButton
添加了一个视图。我的视图也有三个文本框,即。用户名、密码和确认密码。基于这些文本框的合法内容,我需要启用我的注册按钮。
这是我的代码片段:-
在最后一行,我收到两个错误:-
- ARC不允许将'BOOL'(又名'signed char')隐式转换为'id'
- 预期标识符
我是 Reactive Cocoa 的新手。请忽略错误。