SWIFT 4,加载下一个ViewController [英] Swift 4, load next ViewController

查看:49
本文介绍了SWIFT 4,加载下一个ViewController的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在我的应用程序中,导航控制器中嵌入了两个视图控制器。我希望在只打开FirstVC的情况下,可以选择从Second VC获取数据。所以就好像我不想让用户看到(或者至少是交互)第二个VC。

要点是

用户只需点击FirstVC上的按钮(之前没有打开Second VC),我就可以访问Second VC上的数据。 如何从导航控制器中的下一个视图控制器(Second VC)获取数据,而不打开它?或者至少不让用户与其交互。

目前我唯一的想法是:

  1. 要在用户点击按钮时按下Segue,请将其放入内存,加载数据,然后将其清除。但是,当视图控制器更改得如此之快时,这看起来就不太好了。

  2. 要以模态方式在屏幕外显示下一个视图控制器,请获取数据并将其取消。因此,用户甚至看不到另一个视图控制器已打开。

编辑:

我需要获得访问权限,而不仅仅是方法或smth。我需要去@IBOutlet。设置为UIView的子类(使用CorePlot)精确

推荐答案

切勿直接调用loadView()

实例化UIViewController,然后调用loadViewIfNeeded()

调用此方法将从其情节提要文件加载视图控制器的视图,或根据需要基于已建立的规则创建视图。

编辑:

let storyboard = UIStoryboard(name: "Main", bundle: nil)

// make sure that the value is an optional so that you can unset it later. This one is optional because we use optional casting (with as?)
var vc = storyboard.instantiateViewController(withIdentifier: "secondVC") as? SecondViewController
vc?.loadViewIfNeeded()

// use the vc

// later unset vc variable
vc = nil

这篇关于SWIFT 4,加载下一个ViewController的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆