Ios 有关切换到viewcontroller的问题

Ios 有关切换到viewcontroller的问题,ios,swift,segue,Ios,Swift,Segue,从iphone系统应用程序“联系人”中,在“所有联系人”GUI中单击“添加”,它将切换到“新联系人”GUI。然后从“新建联系人”GUI添加“新建”项目,然后单击“完成”,它将转到联系人详细信息GUI(屏幕截图图3)。问题是:我使用“显示(按下)”从“完成”按钮切换到图像3, 但左角的导航项显示为“返回新联系人”,而不是“返回所有联系人” if let nav = self.parentViewController as? UINavigationController { if let v

从iphone系统应用程序“联系人”中,在“所有联系人”GUI中单击“添加”,它将切换到“新联系人”GUI。然后从“新建联系人”GUI添加“新建”项目,然后单击“完成”,它将转到联系人详细信息GUI(屏幕截图图3)。问题是:我使用“显示(按下)”从“完成”按钮切换到图像3, 但左角的导航项显示为“返回新联系人”,而不是“返回所有联系人”

if let nav = self.parentViewController as? UINavigationController {
    if let vc0 = nav.childViewControllers.last as? AddRecordTableViewController {
        vc0.removeFromParentViewController()
    }
} 
performSegueWithIdentifier(Constants.SegueAddRecordVCToViewRecordVC, sender: nil)
我附上了屏幕截图,将问题描述为bleow:

我尝试了两种方法: 方法1:弹出与image2匹配的vc。问题是新记录页面将首先跳转到image1,然后跳转到image3

if let nav = self.parentViewController as? UINavigationController {
    if let vc0 = nav.childViewControllers.last as? AddRecordTableViewController {
        nav.popViewControllerAnimated(true)
     }
  } 
performSegueWithIdentifier(Constants.SegueAddRecordVCToViewRecordVC, sender: nil)
方式2: 使用removeFromParentViewController放弃vc匹配的图像2。问题是左角的导航栏按钮仍显示为“
if let nav = self.parentViewController as? UINavigationController {
    if let vc0 = nav.childViewControllers.last as? AddRecordTableViewController {
        vc0.removeFromParentViewController()
    }
} 
performSegueWithIdentifier(Constants.SegueAddRecordVCToViewRecordVC, sender: nil)

当按下“完成”时,为什么不尝试使用
self.dismissViewControllerAnimated(true,completion:{});

当按下“完成”时,为什么不尝试使用
self.dismissViewControllerAnimated(true,completion:{});
页面将消失并转到“显示详细联系信息”页面,但导航项显示不正确,显示为“我附加了一个屏幕截图,其中显示了segue Relationships OK,我想我看到了您的问题。您为什么不切换该按钮?”如果您使用的是导航控制器,我建议您将其更改为简单的视图控制器,并按照上面的说明进行操作,应该可以解决您的问题。我自己使用简单的视图控制器进行了尝试,并使用segues进行了导航。我建议您也这样做,并在这种情况下使用我们的导航控制器这样,“新联系人”页面将消失并转到“显示详细联系人信息”页面,但导航项显示不正确,显示为“我附加了一个屏幕截图,其中显示了segue Relationship。我想我看到了您的问题。您为什么不给按钮一个顺序?”如果您使用的是导航控制器,我建议您将其更改为简单的视图控制器,并按照上述说明进行操作。应该可以解决您的问题。我自己使用简单的视图控制器进行了尝试,并使用segues进行了导航。我建议您也这样做,并在这种情况下删除导航控制器