Iphone 如何在核心数据中存储NSString?
我有一个模型如下: 然后,我想从Iphone 如何在核心数据中存储NSString?,iphone,ios,xcode,core-data,Iphone,Ios,Xcode,Core Data,我有一个模型如下: 然后,我想从UITableView存储一个城市。问题是,我想将它们保存在iPhone(数据库)中,直到达到10,然后删除第一个并添加最后一个。我有这个想法,但我不能随便添加任何东西,我很困惑 当我单击一个城市时,它会推送到下一个视图,并从一个JSON响应发送该城市的id和名称。。没关系。但是我想存储这些数据,以便进行相同的调用,但是是从另一个UITableView(在它下面)进行的,所以它就像“上次搜索的城市”一样 我想保存id和名称,然后将其加载到另一个只显示名称的ta
UITableView
存储一个城市。问题是,我想将它们保存在iPhone(数据库)中,直到达到10,然后删除第一个并添加最后一个。我有这个想法,但我不能随便添加任何东西,我很困惑
当我单击一个城市时,它会推送到下一个视图,并从一个JSON响应发送该城市的id和名称。。没关系。但是我想存储这些数据,以便进行相同的调用,但是是从另一个UITableView
(在它下面)进行的,所以它就像“上次搜索的城市”一样
我想保存id和名称,然后将其加载到另一个只显示名称的tableView中。有了这些,我还可以,但我无法实现股票交易
代码:
只需添加一个NSDate类型的新属性,该属性在创建新条目时设置为当前日期。再次检索城市后,请使用排序描述符按保存时对城市进行排序,并使用提取限制
如果需要删除以前的城市,date属性也会很有用。您会遇到什么错误?错误何时发生?在创建对象后,是否确实保存了上下文?
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
DetailTaxi *detailView = [[DetailTaxi alloc] initWithNibName:nil bundle:[NSBundle mainBundle]];
NSString *nomville = [[_jsonDict objectAtIndex:indexPath.row] objectForKey:@"label"];
NSString *idVille = [[_jsonDict objectAtIndex:indexPath.row] objectForKey:@"id"];
detailView.title = nomville;
detailView.idVille = idVille;
NSLog(@"Valor: %@", nomville);
NSLog(@"Valor: %@", idVille);
AppDelegate *appDelegate = [[UIApplication sharedApplication] delegate];
NSManagedObjectContext *context = [appDelegate managedObjectContext];
NSString *insert = [[NSString alloc] initWithFormat:@"%@,%@",idVille,nomville];
NSManagedObject *newVille;
NSArray *insertVilles = [insert componentsSeparatedByString:@","];
for(NSString *insert in insertVilles) {
newVille = [NSEntityDescription insertNewObjectForEntityForName:@"Ville" inManagedObjectContext:context];
[newVille setValue:[insertVilles objectAtIndex:0] forKey:@"id"];
[newVille setValue:[insertVilles objectAtIndex:1] forKey:@"nom"];
}
[self.navigationController pushViewController:detailView animated:YES];
}