6

Facebook のような動的なスライド メニューを作成しようとしています。

json リクエストからデータを取得する必要があります。このデータをスライド テーブル ビューのセクションの 1 つに表示します。私はobjective-cが初めてで、NSMutableArraysも試しましたが、エラーが発生しました。他のテーブル ビューでも同じことを行いますが、セクションは使用しません。MutableArray は 1 つだけで、テーブルを表示できます。

私はこのようなことをします:

-(void) requestJSONFinishedWithParsedObject:(NSDictionary *)parsedObject{


  NSArray  *projectsObjectArray = [parsedObject objectForKey:@"projects"];

    [self createMainNavigationController];
    self.section1 = [NSArray arrayWithObjects:@"Profile", @"Notifications", @"Exit", nil];
    self.section2 = [NSArray arrayWithObjects:@"Main", nil];


    for (NSDictionary *projectObject in projectsObjectArray)
    {
        Project *newProject = [[Project alloc] init];

        newProject.title= [projectObject objectForKey:@"title"];

        self.section3 = [NSArray arrayWithObject:newProject.title];
    }

    self.menu = [NSArray arrayWithObjects:self.section1, self.section2, self.section3, nil];
    [menuTableView reloadData];
}

私はこのエラーが発生しています:

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[__NSPlaceholderArray initWithObjects:count:]: attempt to insert nil object from objects[0]'
4

1 に答える 1

12

なぜなら

newProject.title= [projectObject objectForKey:@"title"];

は nil で、それを配列に追加しようとしています。ログに記録して、その値が何であるかを確認します

NSLog(@"%@", [projectObject objectForKey:@"title"]);
于 2013-05-03T18:59:12.403 に答える