Отображение списка в UITableView - PullRequest
1 голос
/ 13 февраля 2011

Редактировать:

Хорошо, в общем, у меня на контроллере представления включен UITextView, а также кнопка сохранения.Когда нажата кнопка «Сохранить», я хочу, чтобы текст UITextView был сохранен в списке.Затем на совершенно отдельном контроллере представления я хочу, чтобы UITableView отображал сохраненные файлы.Надеюсь, это имеет смысл.

Хорошо,

Я пытался это вечно и не могу заставить что-либо работать.Мои вопросы: как программно добавить строку в plist.Как отобразить этот список в UITableView?

Спасибо,

Tate

Ответы [ 3 ]

3 голосов
/ 13 февраля 2011

это то, как вы добавляете NSString к NSArray, который хранится в файле plist.

NSArray *array = [NSArray arrayWithContentsOfFile:path];
NSMutableArray *mutableArray = [array mutableCopy];
[mutableArray addObject:@"FooBar"];
[mutableArray writeToFile:path atomically:YES];
[mutableArray release];

Но нет необходимости сохранять файл на диск каждый раз, когда вы добавляете строку.Скорее всего, это нормально, чтобы сохранить его на диск, когда вы выходите из представления и / или когда вы выходите из приложения.

Вы уже знаете, как создать NSArray из файла plist, поэтому вы можете использовать этот NSArray в качестве источника данных для вашего UITableView, для этого есть десятки учебных пособий, поэтому я пропускаю эту часть.

Если вы используете .plist для какой-то синхронизации между несколькими viewControllers, вы делаете это неправильно.В этом случае вы должны спросить еще раз.

1 голос
/ 13 февраля 2011

Если у вас есть pList в ваших ресурсах, вы можете сделать это следующим образом:

NSString *file = [[NSBundle mainBundle] pathForResource:@"Workbook1" ofType:@"plist"];

//This will take care of all the data types, 
//so in the plist you can have dates, strings, numbers, dictionaries and arrays.        
NSArray *array= [NSArray arrayWithContentsOfFile:file];

Когда у вас есть массив, вы можете использовать его в качестве источника данных для вас UITableView.

Чтобы подключить к списку, вы можете использовать метод большинства объектов списка свойств:

NSString* aString=@"Test";

[aString writeToFile:(NSString *)path atomically:(BOOL)useAuxiliaryFile];

или

NSArray* anArray;

[anArray writeToFile:(NSString *)path atomically:(BOOL)useAuxiliaryFile];
0 голосов
/ 13 февраля 2011

Вам нужно будет загрузить plist в массив.

Тогда вам нужно будет установить данные в ячейках как обычное представление таблицы.

Если вы хотите добавить строки в Plist, вам нужно сохранить их в массив, а затем сохранить файл Plist.

http://developer.apple.com/library/ios/#documentation/userexperience/conceptual/TableView_iPhone/AboutTableViewsiPhone/AboutTableViewsiPhone.html

http://developer.apple.com/library/ios/#documentation/uikit/reference/UITableView_Class/Reference/Reference.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...