Ich habe eine Tabellenansicht mit einer benutzerdefinierten Zelle, die 4 Textfelder und eine Schaltfläche UPDATE enthält. Ich zeige die Daten aus dem Webservice in der Tabellenansicht an. Wenn eines der Textfelder leer ist, sollte die UPDATE-Schaltfläche ausgeblendet werden.Validierungen mit ReactiveCocoa anzeigen
Modell hat die folgenden Eigenschaften mit den 4 Textfelder in jeder Zelle zugeordnet werden
@interface ClaimRequestModel : JSONModel
@property (strong, atomic) NSString <Optional> *id;
@property (strong, atomic) NSString <Optional> *trip_id;
@property (strong, atomic) NSString <Optional> *item;
@property (strong, atomic) NSString <Optional> *name;
@property (strong, nonatomic) NSString <Optional> *description;
@end
ich versucht habe RACSignal auf Eigenschaft „name“ in der Tableviewcontroller als
- (void)viewDidLoad {
[savedClaims enumerateObjectsUsingBlock:^(ClaimRequestModel *claim, NSUInteger idx, BOOL * _Nonnull stop) {
[claimSignals addObject:RACObserve(claim, name)];
}];
enableCostSignal = [RACSignal combineLatest:costSignals];
[self setupClaimTypeSignal:[RACSignal combineLatest:claimSignals]];
// [self.tableView reloadData];
}
-(void)setupClaimTypeSignal:(RACSignal*) signal {
[[signal map:^id(RACTuple *values) {
for (NSString *string in values) {
if ([string isEmpty]) {
return @(NO);
}
}
return @(YES);
}] subscribeNext:^(id x) {
self.validInput = [x boolValue];
}];
}
Es funktioniert zu erstellen Gut mit einer Eigenschaft "name" und ich möchte alle Eigenschaften im ClaimRequestModel beobachten.
Muss ich mehrere Signal-Arrays für jede Eigenschaft erstellen? Wenn ja, was ist, wenn das Modell mehr als 15 Eigenschaften hat?
Könnte mir bitte jemand in der besten Praxis mit ReactiveCocoa helfen?
"SavedClaims" ist Array von Objekten r8? –
Können Sie bitte meine Antwort überprüfen und Antwort geben, dass es funktioniert oder nicht? –
Ich habe bereits upvoted Sie, Vielen Dank @EktaMakadiya – satyanarayana