我使用XLForm
与XLFormRowDescriptor
。其他一切都很好,但我有一个要求,我想使用自定义行与图像和文本。此外,我需要在XLFormRowDescriptor action
上做XLFormRowDescriptorTypeSelectorPush
。
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;