1

我是 xcode 的新手,我似乎一直在尝试创建带有部分的 tableview。

我下面的代码创建了标题,但是我似乎无法显示属于该部分的行。我确定它与多维数组有关。我这样说是因为“dobSection”值是“结果”,而我认为它应该在“DOB”下显示日期。

我花了几个小时尝试许多不同的方法来让它工作......嗯!没运气。

Json 有点像这样:

{"results":
    [{"name":"joe","surname":"blow","DOB":"1990-01-01"},
     {"name":"jane","surname":"doe","DOB":"1990-01-01"},
     {"name":"john","surname":"doe","DOB":"1995-06-06"}]
}

和代码

NSMutableArray *jsonResults;

- (void)fetchedData:(NSData *)responseData {

NSError* error;

NSDictionary* json = [NSJSONSerialization

                      JSONObjectWithData:responseData

                      options:kNilOptions

                      error:&error];

jsonResults = [json objectForKey:@"results"];


self.dob = json;

self.keys = [jsonResults valueForKey:@"DOB"];

[self.tableView reloadData];

}


- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView

{

    // Return the number of sections.
    return [keys count];
    //return 1;

}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section

{

    // Return the number of rows in the section.
   // NSString *key = [keys objectAtIndex:section];

   NSString *key = [keys objectAtIndex:section];

   NSArray *dobSection = [dob objectForKey:key];
   return [dobSection count];
}

另外通过替换这个:

NSArray *dobSection = [dob objectForKey:key];

NSArray *dobSection=[[games objectForKey:@"results"]valueForKey:@"dob"];

我得到所有行。我不能让他们按 DOB 分组

我上面的代码可能有缺陷,但是我希望能提供一些关于如何正确处理的信息。

谢谢

4

0 回答 0