0

NSMutableArray があり、この配列に URL を入れています。

問題はありませんが、NSUserDefaults で保存すると、アプリを閉じた後に読み込んだときにコンテンツが保持されません。

また、URLを文字列に変換しようとしましたが、それも保存されませんが、文字列で動作する他のNSMutableArrays

Xcodeを使用しています。

誰かが私を助けることができますか?

4

1 に答える 1

4

URL の配列を格納できない理由は、プリミティブなDataTypeNSUserDefaultsではなく、プリミティブなデータ オブジェクトの格納のみを許可するためです。NSURL

//Define Your URL
NSURL *myURL = [NSURL URLWithString:@"www.google.com"];
NSMutableArray *urlArr = [[NSMutableArray alloc] initWithCapacity:0];
//Add it to Array
for(int i=0;i<5;i++)
    [urlArr addObject:[myURL absoluteString]]; // Convert NSURL to NSString

[[NSUserDefaults standardUserDefaults] setObject:urlArr forKey:@"myURLArr"];
[[NSUserDefaults standardUserDefaults] synchronize];

NSMutableArray *array = [NSMutableArray arrayWithArray:[[NSUserDefaults standardUserDefaults] objectForKey:@"myURLArr"]];
for(NSString *urlString in array)
    NSLog(@"%@",[NSURL URLWithString:urlString]); // Crete NSURL from NSString
于 2013-05-13T08:17:50.587 に答える