Когда я создаю форму с помощью FXForms, она очень подвижная, с памятью все в порядке. Проблема в том, что чем больше вы прокручиваете вниз и вверх, тем больше увеличивается память, что делает прокрутку очень медленной, очень плохой. Я читал в билет и другой билет, что табличное представление этих FXForms не использует повторное использование ячеек.
Как мне найти способ решить эту проблему?
- (UITableViewCell *)cellForField:(FXFormField *)field
{
//FIXME: memory leak recycle cells
//don't recycle cells - it would make things complicated
Class cellClass = field.cellClass ?: [self cellClassForField:field];
NSString *nibName = NSStringFromClass(cellClass);
if ([nibName rangeOfString:@"."].location != NSNotFound)
{
nibName = nibName.pathExtension; //Removes Swift namespace
}
if ([field.mandatory isKindOfClass:[NSString class]])
{
if ([field.mandatory isEqualToString:@"YES"])
{
NSString *string = [field.title stringByReplacingOccurrencesOfString:@" " withString:@""];
BOOL isNotEmpty = ![string isEqualToString:@""];
if (isNotEmpty)
{
if (![[string substringToIndex:1] isEqualToString:mandatoryCharacter])
{
[field setValue: [NSString stringWithFormat:@"%@%@", mandatoryCharacter, field.title] forKey:@"title"];
}
}
}
}
if ([[NSBundle mainBundle] pathForResource:nibName ofType:@"nib"])
{
//load cell from nib
return [[[NSBundle mainBundle] loadNibNamed:nibName owner:nil options:nil] firstObject];
}
else
{
//hackity-hack-hack
UITableViewCellStyle style = UITableViewCellStyleDefault;
if ([field valueForKey:@"style"])
{
style = [[field valueForKey:@"style"] integerValue];
}
else if (FXFormCanGetValueForKey(field.form, field.key))
{
style = UITableViewCellStyleValue1;
}
//don't recycle cells - it would make things complicated
return [[cellClass alloc] initWithStyle:style reuseIdentifier:NSStringFromClass(cellClass)];
}
}
Заранее спасибо.





Поместите свой код в autoreleasepool и проверьте
например:
-(UITableViewCell *)cellForField:(FXFormField *)field {@autoreleasepool {}}
Пожалуйста, избегайте reuseIdentifier: повторное использование вашего cellClass и их содержимого. Вам нужно найти альтернативу reuseIdentifier.thanks
@ sachin khaire Привет, попробовал, но память не меняет увеличивая ...