Ios 如何启动viewcontroller而不显示它?

Ios 如何启动viewcontroller而不显示它?,ios,uiviewcontroller,Ios,Uiviewcontroller,我有一个选项卡栏控制器和选项卡栏控制器之外的一些其他视图控制器。我有一个名为“X”的viewcontroller,它是选项卡栏控制器的一部分。我有另一个名为“Y”的viewcontroller,它不是选项卡栏控制器的一部分。现在我想启动X,当我在Y里面的时候,点击一个按钮而不实际显示它。我希望X变为活动状态并启动它的viewdidload,以便我可以随时访问X。这可能吗。如果我不能清楚地解释我的沉默,我很抱歉。如果您需要任何其他信息,请告诉我。如果我理解正确,您希望X被初始化。因此,您可以在in

我有一个选项卡栏控制器和选项卡栏控制器之外的一些其他视图控制器。我有一个名为“X”的viewcontroller,它是选项卡栏控制器的一部分。我有另一个名为“Y”的viewcontroller,它不是选项卡栏控制器的一部分。现在我想启动X,当我在Y里面的时候,点击一个按钮而不实际显示它。我希望X变为活动状态并启动它的viewdidload,以便我可以随时访问X。这可能吗。如果我不能清楚地解释我的沉默,我很抱歉。如果您需要任何其他信息,请告诉我。

如果我理解正确,您希望X被初始化。因此,您可以在init构造函数上执行所有初始化操作。viewDidLoad仅在您通过pushViewController或addSubview执行某些演示时由框架调用。这是因为框架希望避免在不使用的情况下获取内存中的视图实例。因此,您可以从控制器中初始化所有需要的内容,但不会加载视图。

如果我理解正确,您希望初始化X。因此,您可以在init构造函数上执行所有初始化操作。viewDidLoad仅在您通过pushViewController或addSubview执行某些演示时由框架调用。这是因为框架希望避免在不使用的情况下获取内存中的视图实例。因此,您可以从控制器初始化所有需要的内容,但不会加载视图

我希望X变为活动状态并启动它的viewdidload,以便我可以随时访问X

UIViewController
view
属性使用延迟加载。你可以打电话:

[myViewController view];
这将触发
loadView
和/或
viewDidLoad
方法(如果实现)

<>但是,您可以考虑将相关的逻辑从代码> > VIEWDATABORE 移动到<代码> init < /C> >(或<代码> init,使用编码器:如果使用StRealBoo/XIB)。这样您就不必调用
-view

我希望X变为活动状态并启动它的viewdidload,以便我可以随时访问X

UIViewController
view
属性使用延迟加载。你可以打电话:

[myViewController view];
这将触发
loadView
和/或
viewDidLoad
方法(如果实现)


<>但是,您可以考虑将相关的逻辑从代码> > VIEWDATABORE 移动到<代码> init < /C> >(或<代码> init,使用编码器:如果使用StRealBoo/XIB)。这样的话,你就不必打电话给
-view

这个老问题了,但就在昨天,我自己也在寻找答案,并设法找到了答案

实例化ViewController,然后调用LoadViewIfRequired()

例如:

let storyboard=UIStoryboard(名称:“Main”,捆绑包:nil)
让exampleVC=storyboard.InstanceEviewController(标识符为:“ExampleViewController”)为!示例视图控制器
示例vc.LoadViewIfRequired()

如果需要,可以检查视图是否加载了以下内容:

exampleVC.isViewLoaded

ViewController现在已经设置好,可以在您决定演示时显示。

这是一个老问题,但我昨天自己也在寻找答案,并设法找到了答案

实例化ViewController,然后调用LoadViewIfRequired()

例如:

let storyboard=UIStoryboard(名称:“Main”,捆绑包:nil)
让exampleVC=storyboard.InstanceEviewController(标识符为:“ExampleViewController”)为!示例视图控制器
示例vc.LoadViewIfRequired()

如果需要,可以检查视图是否加载了以下内容:

exampleVC.isViewLoaded

ViewController现在已全部设置好,可以在您决定显示它时显示。

我希望能够从Y开始初始化X,而不显示它。尝试使用addSubview而不是self-presentViewController。我了解您想要什么,问题是你试图做什么来实现它-你的问题现在太广泛了。我希望能够从Y开始初始化X而不显示它。尝试使用addSubview而不是self-presentViewController。我理解你想要什么,问题是你试图做什么来实现它-你的问题现在太广泛了。