Код row.hidden с предикатом не работает с XLFormRowDescriptorTypeSelectorPickerView в режиме реального времени - PullRequest
0 голосов
/ 25 октября 2019

Я пытаюсь создать форму, используя XLForm от xmartlabs, и пример кода из их репозитория GitHub показывает примеры использования скрытой функции для целого числа или строки, но мне нужно использовать ее с XLFormRowDescriptorTypeSelectorPickerView, когда значение равнопоследний элемент / выбранный элемент.

Я пытался использовать [form formData] и получить доступ к valueData, displayTextValue и displayText, но эта информация устанавливается во время выполнения и, следовательно, не будет обновлять мой row.hidden вв режиме реального времени.

    row.selectorOptions = @[[XLFormOptionsObject formOptionsObjectWithValue:@(0) displayText:@"Option 1"],
                            [XLFormOptionsObject formOptionsObjectWithValue:@(1) displayText:@"Option 2"],
                            [XLFormOptionsObject formOptionsObjectWithValue:@(2) displayText:@"Option 3"],
                            [XLFormOptionsObject formOptionsObjectWithValue:@(3) displayText:@"Option 4"],
                            [XLFormOptionsObject formOptionsObjectWithValue:@(4) displayText:@"Option 5"]
                            ];
    [section addFormRow:row];

    XLFormRowDescriptor *row2 = [XLFormRowDescriptor formRowDescriptorWithTag:switchTag rowType:XLFormRowDescriptorTypeBooleanSwitch title:@"row2"];

    NSDictionary *formValues = [form formValues];

    row2.hidden = [NSPredicate predicateWithFormat: @"4 != %@", [(XLFormOptionsObject*)formValues[kSelectorPickerView] valueData]];

    [section addFormRow:row2];
...