我有一小 iPhone子,储存一份物体清单。 用户可以添加和删除物体,但这一清单仍然很小(大多数用户有10-30个物体)。 <代码>NSUserDefaults 似乎更容易与密码合作,但将加快
NSUserDefaults v. sqlite3
原标题:
最佳回答
NSUserDefaults是供用户选择的,通常是诸如NSString或NSNumber等基本物体。 Sqlite, 财产清单中物体的收集的序列,或核心数据,都是储存用户数据的有效选择,如你制造的模型物体。
你不会看到速度上的差别,但最好能为你的工作选择正确的机制。 如果它只是选择使用NSUserDefault,否则,我将把你的物体编为名单。 如果你重新加入科恰,我将避免核心数据,甚至首先避免 s,让他有机会首先学习基本知识。
问题回答
Try with NSCoding protocol. 1. 宣布贵国执行《国家统一议定书》的类别:
@interface Person : NSObject <NSCoding>
前线承诺采用以下方法:
-(id)initWithCoder:(NSCoder *)coder;
-(void)encodeWithCoder:(NSCoder *)coder;
你们的方法应当像:
-(void)encodeWithCoder:(NSCoder *)coder {
[super encodeWithCoder:coder];
[coder encodeObject:firstName forKey:@"firstName"];
[coder encodeObject:lastName forKey:@"lastName"];
}
-(id)initWithCoder:(NSCoder *)coder {
[super init];
firstName = [[coder decodeObjectForKey:@"firstName"] retain];
lastName = [[coder decodeObjectForKey:@"lastName"] retain];
return self;
}
相关问题
热门标签
- winforms
- combobox
- fogbugz
- java
- date
- internationalization
- asp.net
- iis
- url-rewriting
- urlrewriter
- c#
- enums
- ocaml
- haxe
- algorithm
- string
- viewstate
- .net
- c++
- c
- symbol-table
- mysql
- database
- postgresql
- licensing
- migration
- vb.net
- vb6
- declaration
- vb6-migration
- python
- psycopg2
- backup
- vmware
- virtualization
- gnu-screen
- authentication
- desktop
- excel
- xll
- cultureinfo
- regioninfo
- oracle
- client
- session
- download
- html
- virtual
- constructor
- scenarios
- perl
- full-text-search
- javascript
- ajax
- testing
- oop
- inheritance
- vim
- encapsulation
- information-hiding