2016-03-31 15 views
0

私はNSUserDefaultsでビデオファイルを保存します.UserDefaultのsetURLで保存できる方法があることはわかっています.URLをArrayに追加する方法はありますか?NSUserDefaultにビデオを保存する

+0

「NSUserDefaults」にビデオファイルを追加することはできません。ビデオにはURLを追加できますが、ファイル自体は追加できません。 –

答えて

0

ユーザデフォルトはプロパティリストされている配列内のURLを追加し、NSUserDefaults

NSArray *urlArray = @[url1, url2, url3]; 
    [[NSUserDefaults standardUserDefaults] setObject:urlArray forKey:@"UrlArrayKey"]; 
    [[NSUserDefaults standardUserDefaults] synchronize]; 
+0

http://stackoverflow.com/questions/7411508/nsurl-is-not-stored-as-absolutestring-in-nsuserdefault pls上記​​のリンクを参照して、NSUSERDEFAULTにURLを保存すると返信 –

0
//store urls in NSUserDefaults 
NSArray *arrayURLsToStore = [NSArray arrayWithObjects:@"link1", "link2", nil]; 

[[NSUserDefaults standardUserDefaults] setObject:arrayURLsToStore forKey:@"URLs"]; 
[[NSUserDefaults standardUserDefaults] synchronize]; 

//get urls from NSUserDefaults 
NSArray *arrURLsRetrived = [[NSUserDefaults standardUserDefaults] objectForKey:@"URLs"]; 
NSString *urlString = [NSString stringWithFormat:[arrURLsRetrived objectAtIndex:0]]; 
NSURL *youURL = [NSURL URLWithString:[urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]; 

//now you can use URL1  
+0

のanswer..thanksに進みますクラッシュ "非プロパティ値を挿入しようとしました" –

+0

URLをNSStringに変換してからUserDefaultに格納します。 –

+0

NSStringに変換してNSURLに戻すと、ビデオファイルが表示されません。しかし、URLが表示されます。 –

0

で配列を保存します。 specificationsによれば、少数のタイプのみがプロパティリストを構築する。

  • NSArray
  • NSDictionary
  • NSString
  • NSNumber
  • NSData
  • NSDate

コレクション(配列辞書)プロパティリストでありますすべてのメンバーがプロパティリストである場合に限り、

リンクからご覧いただけるように、NSURLはプロパティリストはありません。

NSString *URLString = [URL absoluteString]; 

...とNSStringのインスタンスが財産であるため、プロパティリストされたままの配列(、にこれを格納します。しかし、あなたは...書き込み時にNSString(URL文字列)のインスタンスにNSURLのインスタンスに変換することができますリスト)。

読み取り時に、あなたは、配列から文字列を取り出すことができるとNSURLのインスタンスに戻ってそれを変換します

NSURL* URL = [NSURL UrlWithString:URLString]; 

もう一つの方法は、NSDataと背中のインスタンスにNSURLのインスタンスを変換することです。これは可能です。NSURLNSSecureCodingをサポートしているためです。

+0

からのみチェックできるようにライブビデオを保存していますが、UserDefaultには[[NSUserDefaults standardUserDefaults] setURL]というプロパティがあります。 –

+0

'-setURL:forKey:'( 'NSUserDefaults')を意味しますか?ドキュメントを読んだことがありますか?このメソッドは何をしていますか?正確に私が私の答えに書いたこと。 –

+0

私の必要条件はNSUserDefaultにビデオを保存することです。あなたの答えは私にURLを取得しましたが、ビデオコンテンツを表示していません。 –

関連する問題