0

次の構造で AppDelegate にロードされた Plist:

ルート ----> 辞書

テスト項目 ----> 配列

項目 1 --> 辞書

HeaderTitle ----> 文字列 ----> セクション 1

アイテム ----> 配列

項目 1 --> 辞書

FirstName ----> 文字列 ----> 任意の名前

SecondName ----> 文字列 ----> 別名

CellIcon ----> 文字列 ----> Icon.gif

ビュー---->数----> 2

項目 2 --> 辞書

名 ----> 文字列 ----> 任意の名前 2

SecondName ----> 文字列 ----> 別名 2

CellIcon ----> 文字列 ----> Icon2.gif

ビュー---->数----> 2

上記の plist 構造を 5 つのセクションを持つテーブル ビューに配置する必要がある TableViewController.m があります。問題は、テーブル ビューの記述されたセクションにそのデータを表示できないことです。このタスクを達成するために可変配列を書くことに混乱しています。テーブル内のさまざまなレベル (ビュー) を制御するために配列を既に使用していますが、可変配列を追加してテーブルのセクションを制御するのに問題があります。私が持っているコードは次のとおりです。

- (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];
}
4

1 に答える 1

0

コードに問題はないようです。これらのメソッドが入力されたときに配列にデータが含まれていると確信していますか?

于 2009-10-26T00:58:54.330 に答える