Я использую XLForm и Objective-C (не Swift).XLForm formRowDescriptorValueHasChanged не работает
Я не могу вызвать formRowDescriptorValueHasChanged:
независимо от того, какие у меня условия, если они есть. Я поместил код в файл .m. Любая причина, по которой я не могу заставить ее работать?
Я скопировал пример кода точно и изменил его в соответствии с моими потребностями. Однако, как бы я ни старался, ничего не вызывается. Имеет ли значение, что я создал форму в viewDidLoad
? Пожалуйста, порекомендуйте.
Благодарим вас за все, что вы профи!
Вот пример кода:
-(void)formRowDescriptorValueHasChanged:(XLFormRowDescriptor *)rowDescriptor oldValue:(id)oldValue newValue:(id)newValue
{
[super formRowDescriptorValueHasChanged:rowDescriptor oldValue:oldValue newValue:newValue];
if ([rowDescriptor.tag isEqualToString:@"alert"]){
if ([[rowDescriptor.value valueData] isEqualToNumber:@(0)] == NO && [[oldValue valueData] isEqualToNumber:@(0)]){
XLFormRowDescriptor * newRow = [rowDescriptor copy];
[newRow setTag:@"secondAlert"];
newRow.title = @"Second Alert";
[self.form addFormRow:newRow afterRow:rowDescriptor];
}
else if ([[oldValue valueData] isEqualToNumber:@(0)] == NO && [[newValue valueData] isEqualToNumber:@(0)]){
[self.form removeFormRowWithTag:@"secondAlert"];
}
}
}
Я уже подклассифицировал контроллер своего представления правильно. Я могу вызвать другие методы, такие как 'didSelectFormRow:' хотя .. – SilverHood