У меня есть plist (массив словарей) с 20 элементами, каждый из 20 словарей имеет «код» и «текст»; каждый текст в среднем составляет 1 Кбайт. Класс, который использует текст, будет использовать 1 из 20, основываясь на «коде». Текст не меняется, поэтому я храню его в комплекте.
Я хотел бы знать, насколько эффективно я делаю это, в основном считывая 20К данных за секунду, используя то, что мне нужно, и высвобождая все, кроме 1К, которое я использую.
У меня есть 2 ивара без свойств:
NSMutableArray *explanation;
UITextView *textView;
textView находится в UITableViewCell и из cellForRowAtIndexPath, который я называю [self retrieveExplanation]. Я загружаю textView из retrieveExplanation, а не возвращаю NSString, чтобы сохранить дополнительное выделение памяти NSString.
-(void) retrieveExplanation {
explanation = [[NSMutableArray alloc] initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"explanation"ofType:@"plist"]];
textView.text = [[explanation objectAtIndex:[self.itemNumber intValue] - 1] objectForKey:@"text"];
[explanation release];
}
Может ли это быть более эффективным? Стоит ли использовать 20 списков или текстовых файлов?
Спасибо