2011-06-06 116 views
0

我使用按钮操作来弹出子视图下面的代码;如何将一个视图导航到其他视图

- (IBAction)pickerUpBtn:(id)sender { 

    PickerPopUpController *screen = [[PickerPopUpController alloc]initWithNibName:@"PickerPopUpController" bundle:Nil]; 
    [self.view addSubview:screen.view]; 
    [self presentModalViewController:screen animated:YES]; 
} 

后我需要去以前的窗口;所以我用另一个按钮动作,并在动作中添加波纹管代码

PickerViewController *screen = [[PickerViewController alloc]initWithNibName:@"PickerViewController" bundle:[NSBundle mainBundle]]; 
[self.navigationController pushViewController:screen animated:YES]; 

但它不会导航到上一个视图。我怎么能这样做?

回答

2

你只需要在Button动作中只放置那个单独的代码。不需要制作parentViewController对象。

-(IBAction)btnaction:(id)sender{ 

[self dismissModalViewControllerAnimated:YES]; 

} 
+0

谢谢。这是工作。 当我导航到前一个视图时,如何将其中一个文本值传递给其他人。我对第二种观点有一些测试价值。当我切换到上一个视图时,我需要在该文本值上打印标签。我该怎么做?? – 2011-06-06 11:28:54

+0

怎么样?在我回到我以前的观点后,我需要打印一个值来标记。我可以在标签上打印... afterSelectView.category.text = label.text; 但我需要在我的第一个视图上打印该值。 (我从第二个视图获取该值,并需要在第一个视图上打印。)我怎么能这样做? – 2011-06-06 11:39:54

+0

用于例如可以按如下方式NSUserDefaults的使用:的NSString * savedText = textLabel.text [[NSUserDefaults的standardUserDefaults]的setObject:savedText forKey:@ “SomeText” 则会]。然后在parentView中检索它,如下所示:NSString * retrieveText = [[NSUserDefaults standardUserDefaults] objectForKey:@“sometext”];您可以在“retrieveText”中获取您存储在前一视图中的值。 – 2011-06-06 11:56:28

3

回去, 做

[self dismissModalViewControllerAnimated:YES] 
+0

感谢你的帮助。你能描述一下它发生了什么吗? 我的意思是“dismissModalViewControllerAnimated”。 – 2011-06-06 10:51:42

+0

请查看http://developer.apple.com/library/ios/documentation/uikit/reference/UIViewController_Class/Reference/Reference.html#//apple_ref/occ/instm/UIViewController/dismissModalViewControllerAnimated: – 2011-06-06 11:00:15

+0

当我导航到上一个查看,如何将其中一个文本值传递给其他人。我对第二种观点有一些测试价值。当我切换到第二视图。我需要在该文本值上打印标签。我该怎么做?? – 2011-06-06 11:28:03

0

您需要添加canceldone您的ViewController这是目前modely回来父视图控制器。

实施Cancel按钮后,你必须使用dismissModalViewControllerAnimated功能

[self dismissModalViewControllerAnimated:YES]; 
+0

谢谢贾利亚。当我导航到前一个视图时,如何将其中一个文本值传递给其他视图。我对第二种观点有一些测试价值。当我切换到第二视图。我需要在该文本值上打印标签。我该怎么做?? – 2011-06-06 11:30:25

0

对于推视图控制器或解散你的ViewController在Cancel按钮行动功能,你可以像下面,

PickerViewController *screen = [[PickerViewController alloc]initWithNibName:@"PickerViewController" bundle:[NSBundle mainBundle]]; 

[self.navigationController pushViewController:screen animated:YES]; 

然后返回时,您必须在“屏幕”视图控制器中添加一个按钮,并且它是点击事件,您必须在代码

[self.navigationController popViewControllerAnimated:YES]; 

希望这会有帮助。

如有任何困难,请告知我。


如果您正在使用方法“presentmodelviewcontroller”,那么你必须写下面一行在按钮的点击。

[self dismissModalViewControllerAnimated:YES]; 
+0

谢谢。当我导航到前一个视图时,如何将其中一个文本值传递给其他人。我对第二种观点有一些测试价值。当我切换到第二视图。我需要在该文本值上打印标签。我该怎么做?? – 2011-06-06 11:31:51

+1

您可以创建一个方法,如 - (void)getTextValue:(NSString *)strStringValue;然后,您可以通过以下方式简单地从第一个视图控制器调用该方法:[screen getTextValue:@“Your text”];所以,你会得到下一个控制器的价值。 – 2011-06-06 11:38:01

相关问题