再次需要帮助!在应用程序启动时,我需要创建2个实体:提供者和国家/地区。我觉得他们是这样的:
-(NSArray *) resultArray {
Provider *orangeFR = [NSEntityDescription insertNewObjectForEntityForName:@"Provider" inManagedObjectContext:self.managedObjectContext];
orangeFR.name = [NSString stringWithFormat:@"Orange"];
orangeFR.adress = [NSString stringWithFormat:@"Champ De Mars"];
Provider *sfrFR = [NSEntityDescription insertNewObjectForEntityForName:@"Provider" inManagedObjectContext:self.managedObjectContext];
sfrFR.name = [NSString stringWithFormat:@"SFR"];
sfrFR.adress = [NSString stringWithFormat:@"SFR Adress"];
NSArray *FRProviders = @[orangeFR, sfrFR];
Provider *BeelineRU = [NSEntityDescription insertNewObjectForEntityForName:@"Provider" inManagedObjectContext:self.managedObjectContext];
BeelineRU.name = [NSString stringWithFormat:@"Beeline"];
BeelineRU.adress = [NSString stringWithFormat:@"Beeline adress"];
Provider *MTSRU = [NSEntityDescription insertNewObjectForEntityForName:@"Provider" inManagedObjectContext:self.managedObjectContext];
MTSRU.name = [NSString stringWithFormat:@"MTS"];
MTSRU.adress = [NSString stringWithFormat:@"MTS Adress"];
NSArray *RUProviders = @[BeelineRU, MTSRU];
Country *france = [NSEntityDescription insertNewObjectForEntityForName:@"Country" inManagedObjectContext:self.managedObjectContext];
france.name = [NSString stringWithFormat:@"France"];
[france addProvider:[NSSet setWithArray:FRProviders]];
Country *russia = [NSEntityDescription insertNewObjectForEntityForName:@"Country" inManagedObjectContext:self.managedObjectContext];
russia.name = [NSString stringWithFormat:@"Russia"];
[russia addProvider:[NSSet setWithArray:RUProviders]];
NSArray *countries = @[france, russia];
return countries;
}
如何在下次发布时使用这些数据而不再创建它们?我如何计算Country对象?将Provider传递给下一个控制器的正确方法是什么?如何计算该控制器中的Provider?
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
MSTProviderViewController *providerViewController = [[MSTProviderViewController alloc]init];
[self.navigationController pushViewController:providerViewController animated:YES];
NSArray *countries = [self resultArray];
Country *selectedCountry = countries[indexPath.row];
Provider *selectedProvider = selectedCountry.provider; //[selectedCountry valueForKey:@"provider"];
//NSArray *selectedProvider = [selectedCountry valueForKey:@"provider"];
providerViewController.providers = selectedProvider;
}
答案 0 :(得分:0)
如何在下次发布时使用这些数据而不再创建它们?
从Core Data商店中获取它。例如,使用NSFetchRequest。
如何计算国家/地区对象?
NSArray *resultArray = [self resultArray];
NSInteger count = [resultArray count];
将Provider传递给下一个控制器的正确方法是什么?如何计算该控制器中的Provider?
在创建下一个控制器调用的方法中
nextController.providerArray = self.providerArray;
如果这对您没有帮助,请尝试改进您的问题。