我正在尝试使用分段控件将搜索数据显示为类别。但是,虽然收到了数据但它没有显示在我的桌子上。这是我的两个视图控制器的代码。子视图控制器是存储UITableView的控制器。
PARENT VC
- (void)searchPeople:(NSString*)text {
if(![text isEqualToString:@""]){
PFQuery *userWithName = [PFQuery queryWithClassName:@"_User"];
[userWithName whereKey:@"fullName" containsString:text];
PFQuery *userWithHandle = [PFQuery queryWithClassName:@"_User"];
[userWithHandle whereKey:@"username" containsString:text];
PFQuery *userQuery = [PFQuery orQueryWithSubqueries:@[userWithHandle,userWithName]];
[userQuery findObjectsInBackgroundWithBlock:^(NSArray *results, NSError *error) {
NSLog(@"USERS: %@",results);
[self.userResults removeAllObjects];
[self.userResults addObjectsFromArray:results];
[[ArrayManager sharedInstance].searchResults addObjectsFromArray:results];
NSLog(@"Count Number: %@", [ArrayManager sharedInstance].searchResults);
[[NSNotificationCenter defaultCenter] postNotificationName:@"reload_data" object:self];
}];
}
}
CHILD VC
-(void)handle_data {
[self.tableView reloadData];
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
NSLog(@"Object Entries: %lu", (unsigned long)[[ArrayManager sharedInstance].searchResults count]);
NSMutableArray * array = [[ArrayManager sharedInstance] getGlobalArray];
return [array count];
}
- (void)tableView: (UITableView *) tableView didSelectRowAtIndexPath: (NSIndexPath *) indexPath {
[tableView deselectRowAtIndexPath:indexPath animated:YES];
}
- (UITableViewCell *)tableView:(UITableView *)tableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
NSDictionary *data = [[ArrayManager sharedInstance]init].searchResults[indexPath.row];
static NSString *MyIdentifier = @"MyIdentifier";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:MyIdentifier];
if (cell == nil)
{
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault
reuseIdentifier:MyIdentifier];
}
cell.textLabel.text = data[@"objectId"];
return cell;
}
数据从服务器返回正常,但表中没有数据显示。 ArrayManager
类是Singleton类。
答案 0 :(得分:0)
创建数据访问对象(DAO)并将所有信息存储在数组中。
http://www.tutorialspoint.com/design_pattern/data_access_object_pattern.htm
让VC改变并访问DAO而不是相互访问。这样简单得多。