sdk*_*bie -1 iphone objective-c ios4 ios ios5
所以我试图在视图之间传递一个url.每当用户从tableview中进行选择时,我就会想到以下代码会踩到@"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];
}
}
Run Code Online (Sandbox Code Playgroud)
在接收端:
-(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];
}
Run Code Online (Sandbox Code Playgroud)
viewDidLoad仅在最初从xib文件加载视图时调用.如果弹出并重新推动视图控制器,则除非您收到内存不足警告,否则不会再次执行该方法.
viewWillAppear每当您的视图出现时,移动保证要调用的代码.
| 归档时间: |
|
| 查看次数: |
479 次 |
| 最近记录: |