Я хочу хранить xml на iphone, который состоит из нескольких избранных элементов, выбранных пользователем приложения. Я использую TBXML (унаследованный от prev dev), и поэтому я не могу написать xml, я думал о том, чтобы собрать вместе xml из каждого элемента в виде строки и затем загрузить его следующим образом:
tbxml = [[TBXML alloc] initWithXMLString: myXML]
Это не идеально, но есть ли ограничения / рекомендации для этого метода, и как лучше всего хранить этот файл?
Большое спасибо
редактировать
Пользователь добавляет элемент в UITableView, затем его можно просмотреть в другом UITableView, который называется «My Favorites». UITableViewController отображает содержимое из файла XML, возвращенного с сервера. Я пытался упростить для меня задачу эффективного добавления каждого элемента «xml» в большую строку, а затем сохранить эту строку где-нибудь - либо в файле, либо в NSUserDefaults
в идеале я мог бы сохранить массив объектов, поскольку они добавляются в избранное для последующего чтения.
объекты созданы так
@interface Playlist : NSObject {
NSURL *imagePath;
NSString *title;
NSString *subTitle;
NSString *mediaType;
NSString *artistName;
NSString *id;
}
@property (nonatomic, retain) NSURL *imagePath;
@property (nonatomic, retain) NSString *title;
@property (nonatomic, retain) NSString *subTitle;
@property (nonatomic, retain) NSString *mediaType;
@property (nonatomic, retain) NSString *artistName;
@property (nonatomic, retain) NSString *id;
@end
есть ли способ сохранить массив объектов, подобный приведенному выше, в NSUserDefaults?
спасибо
РЕДАКТИРОВАТЬ 2
Я пошел с NSUserDefaults и сохранил идентификатор для каждого элемента в виде массива
очень легко получить доступ и обновить, я создал класс PlaylistDataController с такими методами, как этот, чтобы добавить элемент в мой 'MyPlaylistArray' в пользовательских значениях по умолчанию
-(void) addItemToPlaylist: (NSString*) myID
{
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSMutableArray *myPlaylistArray = [NSMutableArray arrayWithArray:[defaults objectForKey:@"MyPlaylistArray"]];
[myPlaylistArray addObject:myID];
[defaults setObject:myPlaylistArray forKey:@"MyPlaylistArray"];
[defaults synchronize];
}
Надеюсь, это кому-нибудь поможет