2012-11-07 49 views
-1

在我的調查應用程序的FirstViewController中,我有NSMutableArray包含數據(字符串)。我也創建了日期varibale。這裏的代碼NSUserDefaults顯示日期和表中的數據查看

NSDateFormatter *dateformater=[[NSDateFormatter alloc] init]; 
[dateformater setDateFormat:@"EEEE,dd MMMM yyyy HH:mm a"]; 

NSDate *today=[NSDate date]; 
NSString *currentDate=[dateformater stringFromDate:today]; 

現在我想用NSUserDefaults的的幫助下從數組保存數據,還保存日期變量時,調查拍攝並在SecondViewController的實現代碼如下顯示它(第一用戶可以看到該調查的日期和然後通過點擊日期 - 數組中的數據)。

我知道NSUSerDefaults是如何工作的,但我不知道如何將數組按日期變量顯示在SecondViewController中。任何人都可以幫助我嗎?

回答

0

AppDelegate.h文件只是聲明變量...

NSUserDefaults *userDefaults; 
NSMutableArray *arrDate; 

之後......之後,當你要插入,更新

AppDelegate.m豪情在applicationDidFinishLonching:方法

userDefaults = [NSUserDefaults standardUserDefaults]; 
    NSData *dataRepresentingtblArrayForSearch = [userDefaults objectForKey:@"arrDate"]; 
    if (dataRepresentingtblArrayForSearch != nil) { 
     NSArray *oldSavedArray = [NSKeyedUnarchiver unarchiveObjectWithData:dataRepresentingtblArrayForSearch]; 
     if (oldSavedArray != nil) 
      arrDate = [[NSMutableArray alloc] initWithArray:oldSavedArray]; 
     else 
      arrDate = [[NSMutableArray alloc] init]; 
    } else { 
     arrDate = [[NSMutableArray alloc] init]; 
    } 
    [arrDate retain]; 

或刪除此用戶的數據默認使用波紋代碼...

從陣列

[appDelegate.arrDate removeObjectAtIndex:Index];/// give the integer value instead of Index 

刪除記錄,這是在陣列中添加記錄..

[appDelegate.arrDate addObject:currentDate];///add value or add date here 

後,最終保存陣列這種修改只存檔像波紋管..

NSData *data=[NSKeyedArchiver archivedDataWithRootObject:appDelegate.arrDate]; 
[appDelegate.userDefaults setObject:data forKey:@"arrDate"]; 
[appDelegate.userDefaults synchronize]; 

我希望這對你有所幫助。

0

創建一個NSDictionary與日期和數據對象:

NSDictionary *dict = [[NSDictionary alloc] initWithObjectsAndKeys:[NSString stringWithFormat:@"%@",currentDate], @"date", @"yourData", @"data", nil];

使用然後把它在NSUserDefault

[NSUserDefaults standardUserDefaults] setObject:yourDictionary forKey:@"item1"]; 

這將單個數據存儲到NSUserDefault。

您可以通過使用檢索對象:

NSDictionary * dictionary = [[NSUserDefaults standardUserDefaults] dictionaryForKey:@"item1"]; 

現在,您將使用[dictionary objectForKey:@"date"];和數據使用獲取日期:[dictionary objectForKey:@"data"];