[英]Shared Preferences in Objective C from Android
反正有没有重新创建这个代码到Objective c? 我刚刚开始,我需要一些帮助。
String name = #;// Will often vary.
SharedPreferences userData = this.getSharedPreferences(name + "userdata", MODE_PRIVATE);
Editor edit = userData.edit();
edit.clear();
edit.putFloat("rating", Rating.getRating());
edit.putString("good", txtGood.getText().toString().trim());
edit.putString("improve", txtImprove.getText().toString().trim());
edit.commit();
Log.d(TAG, "Saving Data");
这段代码的优点是每次调用方法时都会创建一个新的SharedPreference。 根据我使用NSUserDefaults的经验,它只能生成1批数据。
NSUserDefaults
(Objective-C)类似于SharedPreferences
(Android)。
// To save data
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:@"title" forKey:@"kTitle"];
[defaults setInteger:21 forKey:@"kSrNo"];
[defaults synchronize];
NSLog(@"Data are saved to defaults.");
// To retrive it back
NSString *title = [defaults objectForKey:@"kTitle"];
int srno = [defaults integerForKey:@"kSrNo"];
NSLog(@"Data from defaults--> Title: %@ SrNO: %d",title,srno);
- (NSString*)GetFilePath:(NSString*)filename
{
NSError *error;
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); //1
NSString *documentsDirectory = [paths objectAtIndex:0]; //2
NSString* file = [[NSString alloc]initWithFormat:@"%@.plist",filename];
NSString* path = [documentsDirectory stringByAppendingPathComponent:file];
NSFileManager *fileManager = [NSFileManager defaultManager];
if (![fileManager fileExistsAtPath: path]) //4
{
NSString *bundle = [[NSBundle mainBundle] pathForResource:filename ofType:@"plist"]; //5
[fileManager copyItemAtPath:bundle toPath:path error:&error]; //6
}
return path;
}
并从任何方法调用这样:
NSMutableDictionary* TempDict = [[NSMutableDictionary alloc]initWithContentsOfFile:[self GetFilePath:@"FileName"]];
Plist就像共享首选项,您可以在其中保存任何数据。 数组,字符串,布尔等,也没有限制。 你可以看看这个以获取更多信息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.