Возникли проблемы с изменяемым массивом для загрузки разделов в табличном представлении из Plist - PullRequest
0 голосов
/ 26 октября 2009

Plist загружен в AppDelegate со следующей структурой:

Root ----> Словарь

Тестовый объект ----> Массив

Элемент 1 ----> Словарь

Заголовок заголовка ----> Строка ----> Раздел 1

Предметы ----> Массив

Элемент 1 ----> Словарь

Имя ----> Строка ----> Любое имя

Второе имя ----> Строка ----> Другое имя

CellIcon ----> String ----> Icon.gif

Просмотр ----> Номер ----> 2

Элемент 2 ----> Словарь

FirstName ----> String ----> Any Name 2

SecondName ----> String ----> Другое имя 2

CellIcon ----> String ----> Icon2.gif

Просмотр ----> Номер ----> 2

У меня есть TableViewController.m, который требует, чтобы я поместил вышеуказанную структуру plist в табличное представление, которое имеет 5 разделов. Проблема в том, что я не могу отобразить эти данные в описанных разделах моего табличного представления. Я запутался в написании изменяемого массива для выполнения этой задачи. Я уже использую массив для управления различными уровнями (представлениями) в моей таблице, но у меня возникают проблемы с добавлением изменяемого массива для управления разделами таблицы. У меня есть следующий код:

- (void)viewDidLoad {
[super viewDidLoad];

if (CurrentLevel == 0) {
    NSArray *tempArray = [[NSArray alloc] init];
    self.tableDataSource = tempArray;
    [tempArray release];

    TheAppDelegate *AppDelegate = (TheAppDelegate *)[[UIApplication sharedApplication] delegate];
    self.tableDataSource = [AppDelegate.data objectForKey:@"SampleArray"];
    self.navigationItem.title = @"Main";

          }
      else 
    self.navigationItem.title = CurrentTitle;   
          }

- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning]; 
}


- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return [menuSections count];
}

- (NSString *)tableView:(UITableView *)tableView     titleForHeaderInSection:(NSInteger)section {
NSDictionary *menuSection = [menuSections objectAtIndex:section];
return [menuSection objectForKey:@"HeaderTitle"];

}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section     {
NSArray *menuItems = [[menuSections objectAtIndex:section] objectForKey:@"Items"];
return [menuItems count];
}

1 Ответ

0 голосов
/ 26 октября 2009

Ничто не выглядит неправильно с вашим кодом, вы уверены, что ваши массивы содержат данные при вводе этих методов?

...