Сохранение текущей даты в выпуске субтитров TableView
Я пытался записать дату и время в субтитре TableView. Я использовал массив для субтитров, как я делал для текстового поля, но он не работал для субтитров. Я делаю что-то неправильно? Код, который я добавил для субтитров, помеченных *.
-(IBAction)save{
*NSDate *now = [NSDate date];
*NSLog(@"now: %@", now); // now: 2012-02-28 09:57:49 +0000
*NSString *strDate = [[NSString alloc] initWithFormat:@"%@",now];
NSUserDefaults *add1 = [NSUserDefaults standardUserDefaults];
NSMutableArray *myList = [[[NSUserDefaults standardUserDefaults] valueForKey:@"myTxtList"] mutableCopy];
*NSMutableArray *myDate = [[[NSUserDefaults standardUserDefaults] valueForKey:@"myDateList"] mutableCopy];
[myList addObject:txt1.text];
*[myDate addObject:strDate];
[[NSUserDefaults standardUserDefaults] setObject:[NSArray arrayWithArray:myList] forKey:@"myTxtList"];
*[[NSUserDefaults standardUserDefaults] setObject:[NSArray arrayWithArray:myDate] forKey:@"myDateList"];
[add1 synchronize];
self.dataArray = myList;
*self.dateArray = myDate;
[self.tbl1 reloadData];
}
- (void)viewDidLoad
{
[super viewDidLoad];
self.dataArray = [[NSUserDefaults standardUserDefaults] objectForKey:@"myTxtList"];
*self.dateArray = [[NSUserDefaults standardUserDefaults] objectForKey:@"myDateList"];
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return [dataArray count];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
NSString *string = [dataArray objectAtIndex:indexPath.row];
*NSString *dateString = [dateArray objectAtIndex:indexPath.row];
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if(cell==nil)
{
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier] autorelease];
}
cell.textLabel.text = string;
*cell.detailTextLabel.text = dateString;
return cell;
}
1 ответ
Решение
Вы сохраняете это как NSDate и затем читаете это как NSString.
Кроме того, я предполагаю, что вы используете ARC, поскольку вы не выпускаете изменяемые копии myList и myDate. Если вы не на ARC, вы должны выпустить их, иначе он будет течь.