我是 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 分组
我上面的代码可能有缺陷,但是我希望能提供一些关于如何正确处理的信息。
谢谢