我想保存爲我的UITableView選定的行。所以,當用戶回到屏幕上時,它會顯示他們最後的選擇。保存選定的行爲UITableView
這是我試過的代碼,其中,我想會做的伎倆:
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
self.lastIndexPathUsed = indexPath;
NSData *responseData = [NSKeyedArchiver archivedDataWithRootObject:indexPath];
[[NSUserDefaults standardUserDefaults] setObject:responseData forKey:@"IndexPathData"];
[[NSUserDefaults standardUserDefaults] synchronize];
[tableView reloadData];
}
然後在我viewDidLoad中
- (void)viewDidLoad
{
[super viewDidLoad];
NSData *responseData = [[NSUserDefaults standardUserDefaults]objectForKey:@"IndexPathData"];
NSIndexPath *index = [NSKeyedUnarchiver unarchiveObjectWithData:responseData];
self.lastIndexPath = index;
}
然而,responseData
還沒有索引路徑保存。它總是NULL。即使在didSelectRowAtIndexPath方法中。
任何人都知道更好的方法來做到這一點?
在應用程序委託中添加一個可變陣列並添加對象在didiselectro中添加索引path.row的索引w ..當你回來時只顯示他們 –
不確定你在問什麼? – brandonscript
我真的不想使用appDelegate來存儲或保存任何值。感謝這個想法,我會嘗試使用可變數組。 – Tander