我是新應用程序開發人員,我正在使用XCode 4.2目標C保存項目的歷史記錄
我正在創建讀取QR碼的應用程序。我希望能夠將字符串(NSString格式)以及可能的圖像保存在歷史記錄列表中,以便即使用戶關閉應用程序,掃描的QR碼的歷史記錄也能被恢復,我該怎麼做?
一個示例代碼可以理解
非常感謝
我是新應用程序開發人員,我正在使用XCode 4.2目標C保存項目的歷史記錄
我正在創建讀取QR碼的應用程序。我希望能夠將字符串(NSString格式)以及可能的圖像保存在歷史記錄列表中,以便即使用戶關閉應用程序,掃描的QR碼的歷史記錄也能被恢復,我該怎麼做?
一個示例代碼可以理解
非常感謝
對於持續字符串我會使用NSUserDefaults的。
NSString *QRString = stringFromQRCode;
[[NSUserDefaults standardUserDefaults] QRString forKey:@"SomeKeyToReference"];
[[NSUserDefaults standardUserDefaults] synchronize];
這會將字符串存儲在NSUserDefaults中。稍後檢索:
NSString *retrivedQRString = [[NSUserDefaults standardUserDefaults] objectForKey:@"SomeKeyToReference"];
希望這會有所幫助。
考慮在你的包中嵌入一個小型的SQLite數據庫,並使用一個使SQLite接口簡單的開源庫。這是可能變大的事情,並且您想要使用支持更多或更少任意數量數據的接口。
我的應用程序之一是每日提醒/肯定的事情,最簡單的方法是有一個日常內容的SQLite數據庫表。一旦我知道如何做一塊蛋糕。
下面是如何嵌入和使用SQLite教程的列表:http://mobileorchard.com/iphone-sqlite-tutorials-and-libraries/
如果他想使用SQLite(在我看來這是過度的),那麼他應該使用核心數據。不是一些隨機的SQLite庫。 – cocoahero
問題我想。我絕對認爲核心數據是過量的,但我認爲SQLite本身是輕量級且易於使用的。這是一個完美的用例,imo。 –
如果你想要做的是保存一系列的字符串,你可以用的NSArray和財產清單很輕鬆地完成。
例如,創建一個NSMutableArray對象。添加你的字符串,然後致電[myArray writeToURL:aURL atomically:NO];
。這會將plist保存到您提供的URL中的文件。
然後,您可以用[NSArray arrayWithContentsOfURL:aURL];
創建一個NSArray保存以類似的方式,只要對象與NSCoder協議的規定可以做的圖像重新加載列表。有關更多信息,請參閱here。
哦,我不會。 NSUserDefaults最適合設置值的小字典(並可能將其保存到iCloud中),而不是用於存儲應用程序數據。 –
我同意@DanRay。 NSUserDefaults的目的是保存應用程序設置/偏好。不是應用數據。 – cocoahero