Ios 多个视图到一个视图,如何返回发件人
我正在将三个不同的视图连接到一个视图,并尝试创建一个返回按钮,返回到我来自的视图 例如: 视图A、B和C连接到视图D。如果我从B转到D,我想创建一个返回按钮,返回到B。如果我从C转到D,我希望该按钮返回到C,依此类推。我如何通过编程实现这一点 下面是一些代码: 在我们正在使用的发件人上Ios 多个视图到一个视图,如何返回发件人,ios,xcode,view,segue,viewcontroller,Ios,Xcode,View,Segue,Viewcontroller,我正在将三个不同的视图连接到一个视图,并尝试创建一个返回按钮,返回到我来自的视图 例如: 视图A、B和C连接到视图D。如果我从B转到D,我想创建一个返回按钮,返回到B。如果我从C转到D,我希望该按钮返回到C,依此类推。我如何通过编程实现这一点 下面是一些代码: 在我们正在使用的发件人上 - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { if ([segue.identifier isEqualToStri
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
if ([segue.identifier isEqualToString:@"SegueA"]) {
ViewController *destViewController = segue.destinationViewController;
destViewController.segueName = @"SegueA";
}
}
在接收器端,我们使用以下代码:
- (IBAction)backBtn:(id)sender {
if([_segueName isEqualToString: @"SegueA"]){
[self performSegueWithIdentifier: @"SegueAA" sender:self];
}
因此,我们使用一个segue从a转到D,然后,如果识别出SegueA,我们希望通过一个segue从D返回一个称为SegueAA的SegueA。您需要进行手动segue。您可以通过从一个视图切换到另一个视图,然后在界面生成器中为其命名来完成此操作
- 控件从一个视图拖动到另一个视图
- 在“手动”segue类型下,您可能希望使用push
- 单击segue并转到properties,在“Identifier”字段下为其命名
- 那么你可以这样称呼它:
[self performSegueWithIdentifier:@"initalLegalSegue" sender:self];
(例如,此块将通过代码手动启动我的“initialLegalSegue”)假设您使用的是
UIViewController
而不是UIView
,则可以使用
[self.navigationController popViewControllerAnimated:YES]
对于模态分段,我一直在使用以下命令:
这可以追溯到一个视图控制器:
[self.presentingViewController dismissViewControllerAnimated:YES completion:nil];
这可以追溯到两个视图控制器:
[self.presentingViewController.presentingViewController dismissViewControllerAnimated:YES completion:nil];
尝试为您已经完成的工作提供一些代码。另外,您是否直接使用
UIView
s在应用程序中进行导航,而不是使用UIViewController
s?因为听起来,你应该使用视图控制器和导航控制器,但你在问题中没有提到它们。所有视图控制器都有导航控制器所有视图控制器都有属性导航控制器
,但是,只有当它们包含在UINavigationController
中时,才将其设置为某个值,但它们不一定是。好吧,如果您有UINavigationController,则只能使用segues。因此,在本例中设置该值。