android - 关闭一个 ViewController 并在 iOS 中启动另一个(不重复,其他答案不起作用)

标签 android ios xcode swift uiviewcontroller

我有一个 Android 应用程序,我正在尝试使用 Xcode 和 Swift 为 iOS 重新创建该应用程序。它从一个动画屏幕开始,该屏幕检查一些内容,然后调用 finish() 并打开一个登录屏幕,我也调用 finish() 来启动主要 Activity 该应用程序。有时我会使用 finish() 关闭主要 Activity ,然后再次打开登录屏幕。我不知道如何在 Swift 中做到这一点。

当我在呈现新 View Controller 后尝试关闭 Swift 中的 View Controller 时,它会关闭新 View Controller 而不是旧 View Controller 。重新排列这些行也不起作用。

我还尝试过提供一种在呈现新 View Controller 后关闭当前 View Controller 的完成方法,以及一种在关闭旧 View Controller 后呈现新 View Controller 的完成方法。这两种选择都不起作用。这是一个例子:

解除 View Controller :

self.dismissViewControllerAnimated(true, completion: present)

present() 方法:

    func present() {
    let vc = self.storyboard!.instantiateViewControllerWithIdentifier("LoginViewController") as! LoginViewController
    self.presentViewController(vc, animated: true, completion: nil)
}

我想要拥有彼此不依赖的独立 ViewController,这样我就不会无休止地堆叠一堆 View Controller 。

最佳答案

您只能关闭导航堆栈中的现有 View Controller 。 尝试关闭现有 View Controller ,然后呈现您想要的 VC

关于android - 关闭一个 ViewController 并在 iOS 中启动另一个(不重复,其他答案不起作用),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37751005/

相关文章:

iphone - 什么时候在 NSURLConnection 委托(delegate)上调用 release?

Xcode 配置文件即将到期

ios - 解析 PFUser 数据未在 iPhone 模拟器上更新

java - OnClickListener 只执行一次

java - 如何在android studio上更新Java的onDraw()

javascript - css webkit column 访问单列

objective-c - Objective-C : How to use CGLayerCreate and CGContextDrawLayerAtPoint?

android - 构建 gradle 时出错 - com.google.android.gms :play-services-basement is being requested by various other libraries

android - 它是 Android 的调用 Controller 功能吗?

ios - 如何在 Swift 中为 SequenceOf 创建扩展?