我创建了录制声音并在tableview
中显示声音文件的应用程序。在该应用程序中,当录制声音时,filepath
将存储在一个数组中,我使用哪个数组来填充我的tableview
。但我的问题是,当我关闭应用程序时,我的数组将是空的,我丢失了我的录制文件。
所以现在,当我第二次打开我的应用程序时,如何获取录制的文件。我将声音文件存储在文档目录中。
答案 0 :(得分:1)
将数组存储在NSUserDefaults
中。在NSUserDefaults
中重新存储并存储数组..请参阅NSUserDefaults
在AppDelegate.h
文件中只声明变量...
NSUserDefaults *userDefaults;
NSMutableArray *yourArray;
after...
AppDelegate.m
方法中的applicationDidFinishLonching:
Fille
userDefaults = [NSUserDefaults standardUserDefaults];
NSData *dataRepresentingtblArrayForSearch = [userDefaults objectForKey:@"yourArray"];
if (dataRepresentingtblArrayForSearch != nil) {
NSArray *oldSavedArray = [NSKeyedUnarchiver unarchiveObjectWithData:dataRepresentingtblArrayForSearch];
if (oldSavedArray != nil)
yourArray = [[NSMutableArray alloc] initWithArray:oldSavedArray];
else
yourArray = [[NSMutableArray alloc] init];
} else {
yourArray = [[NSMutableArray alloc] init];
}
[yourArray retain];
之后,当您要在此UserDefaults
使用Bellow Code ...
[appDelegate.yourArray addObject:yourDataString];///set your value or anything which you want to store here...
NSData *data=[NSKeyedArchiver archivedDataWithRootObject:appDelegate.yourArray];
[appDelegate.userDefaults setObject:data forKey:@"yourArray"];
[appDelegate.userDefaults synchronize];
我希望这可以帮助你...