And*_*rew 0 iphone core-data objective-c
我只是在学习核心数据而且主要是应对,但在考虑如何实现它时遇到一些麻烦.
我想从我的应用程序中访问相同的Core Data.从多个类访问它的最佳方法是什么?是否建议将其作为全局变量(通常不建议在面向对象编程中使用),或者将其作为类之间的实例变量传递?
核心数据模型将在整个应用程序中提供.您可以通过您的应用轻松访问托管对象.你只需要创建一个AppDelegate类的实例.
比如说你已存储了联系人.您可以[managedObject valueForKey:@"name"]在任何视图控制器中使用.
1.创建appDelegate的实例
self.theappDel=[[UIApplication sharedApplication] delegate];
Run Code Online (Sandbox Code Playgroud)
2.获取上下文,获取请求和实体描述.
NSManagedObjectContext*context=[self.theappDel managedObjectContext];
NSEntityDescription*entity=[NSEntityDescription entityForName:@"Contacts" inManagedObjectContext:context];
NSFetchRequest*request=[[NSFetchRequest alloc] init];
[request setEntity:entity];
NSManagedObject*managedObject=nil;
NSError*error=nil;
NSArray*objectList=[context executeFetchRequest:request error:&error];
Run Code Online (Sandbox Code Playgroud)
3.从阵列中获取托管对象.
if([objectList count]>0)
managedObject=[objectList objectAtIndex:0];
NSLog(@"The name: %@",[managedObject valueForKey:@"name"])
Run Code Online (Sandbox Code Playgroud)
4.使用singleton(或任何方便的方法)模式在您需要的其他视图控制器中传递名称对象.
| 归档时间: |
|
| 查看次数: |
283 次 |
| 最近记录: |