Maison > Questions et réponses > le corps du texte
假设有两个 Siwtch 需要互异绑定,用 rac 该怎么写?
UISwitch *switch1;
UISwitch *switch2;
switch1.action = {
switch2.on = !switch2.on;
}
switch2.action = {
switch1.on = !switch1.on;
}
怪我咯2017-04-18 09:35:25
Est-ce vrai ?
switch1.on = YES;
switch2.on = NO;
RACChannelTerminal *t1 = switch1.rac_newOnChannel;
RACChannelTerminal *t2 = switch2.rac_newOnChannel;
[[t1 map:^id(NSNumber *on) {
return @(![on boolValue]);
}] subscribe:t2];
[[t2 map:^id(NSNumber *on) {
return @(![on boolValue]);
}] subscribe:t1];
天蓬老师2017-04-18 09:35:25
Trouvé une solution :
RACChannelTerminal *aButtonChannel = [aButton rac_newSelectedChannel];
RACChannelTerminal *bButtonChannel = [bButton rac_newSelectedChannel];
[[aButtonChannel not] subscribe:bButtonChannel];
[[bButtonChannel not] subscribe:aButtonChannel];