Итак, я пытаюсь передать URL между представлениями.Я думал, что следующий код будет топать все, что находится в @ "url" каждый раз, когда пользователь делает выбор из таблицы.Что на самом деле происходит, так это то, что первый выбор всегда возвращается и никогда не растоптан.Хм, может это я?Есть идеи?Спасибо.
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
if (indexPath.row == 0)
{
[self saveToUserDefaults:@"http://url1"];
[self.navigationController pushViewController:self.webController animated:YES];
}
else if (indexPath.row == 1)
{
[self saveToUserDefaults:@"http://url2"];
[self.navigationController pushViewController:self.webController animated:YES];
}
}
-(void)saveToUserDefaults:(NSString*)myString
{
NSUserDefaults *standardUserDefaults = [NSUserDefaults standardUserDefaults];
if (standardUserDefaults)
{
[standardUserDefaults setObject:myString forKey:@"url"];
[standardUserDefaults synchronize];
}
}
На принимающей стороне:
-(NSString*)retrieveFromUserDefaults
{
NSUserDefaults *standardUserDefaults = [NSUserDefaults standardUserDefaults];
NSString *val = nil;
if (standardUserDefaults)
val = [standardUserDefaults objectForKey:@"url"];
return val;
}
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
NSString *url = self.retrieveFromUserDefaults;
[self handleURLRequest:url];
}