4

我正在XLForm使用XLFormRowDescriptor. 其他一切工作正常,但我有一个要求,我想在图像和文本中使用自定义行。另外我需要XLFormRowDescriptorTypeSelectorPushXLFormRowDescriptor action.

4

1 回答 1

0

来自 XLFormBaseCell 的子类(如果您更喜欢使用 IB,也可以创建自定义 xib),并实现

+ (void)load {    
    XLFormViewController.cellClassesForRowDescriptorTypes[@"YOUR_UNIQ_TYPE"] = NSStringFromClass([CHILD_OF_XLFormBaseCell class]);
}

- (void)configure {
    [super configure];
}

- (void)update {
    [super update];
}

+ (CGFloat)formDescriptorCellHeightForRowDescriptor:(XLFormRowDescriptor *)rowDescriptor;

要不使用默认操作(如 XLFormRowDescriptorTypeSelectorPush),您可以覆盖此方法:

- (void)formDescriptorCellDidSelectedWithFormController:(XLFormViewController *)controller {
//anything you want, for example
    if (self.rowDescriptor.action.formBlock) {
        self.rowDescriptor.action.formBlock(self.rowDescriptor);
    }
}

然后您将能够使用创建 XLFormRowDescriptor

- (instancetype)initWithTag:(NSString *)tag rowType:(NSString *)rowType title:(NSString *)title;
于 2016-11-18T10:44:37.947 回答