0

我正在尝试根据用户的输入在我的表单中添加更多行。

例如,我有一个字段询问我要添加到表单中的行数。如果输入为 5,则将生成 5 个附加行并将其附加到表单中。

到目前为止,XLForm 能够添加单行(例如多值表单),我在想是否可以批量添加,而不是每次都添加单行。

这可能吗?

4

1 回答 1

1

我处理 XLForm 已经有一段时间了,但我认为这样的事情会很好用:

-(void) formRowDescriptorValueHasChanged:(XLFormRowDescriptor *)formRow oldValue:(id)oldValue newValue:(id)newValue {
    [super formRowDescriptorValueHasChanged:formRow oldValue:oldValue newValue:newValue];

    NSNumber *newVal = [newValue valueData];

    int count = newVal.intValue; //5

    for(int i=0; i<count; i++) {
        NSString *title = [NSString stringWithFormat:@"title %d",i+1];
        XLFormRowDescriptor *row = [XLFormRowDescriptor formRowDescriptorWithTag:title rowType:XLFormRowDescriptorTypeText];
        [row.cellConfigAtConfigure setObject:title forKey:@"textField.placeholder"];
        [self.form addFormRow:row afterRowTag:someOtherRow.tag];
    }
}
于 2015-07-29T13:55:37.500 回答