Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 视图控制器层次结构_Iphone_Objective C_Ios - Fatal编程技术网

Iphone 视图控制器层次结构

Iphone 视图控制器层次结构,iphone,objective-c,ios,Iphone,Objective C,Ios,我有这样一个场景: 我有一个MovieViewController它是我应用程序的简介(它是我故事板中的初始视图控制器)。它通过以下方式转到另一个名为MenuViewController的视图控制器: 电影结束 触摸检测 现在的顺序是: moviewcontroller-->MenuViewController-->(然后三个按钮对应不同的视图) 根据我的老问题: 我对应于答案并编辑代码,但错误仍然发生在我的调试器中 警告:试图在上显示 谁的视图不在窗口中 等级制度 它仍然会出现多次,在显示

我有这样一个场景: 我有一个
MovieViewController
它是我应用程序的简介(它是我故事板中的初始视图控制器)。它通过以下方式转到另一个名为
MenuViewController
的视图控制器:

  • 电影结束
  • 触摸检测
现在的顺序是:
moviewcontroller
-->
MenuViewController
-->(然后三个按钮对应不同的视图)

根据我的老问题:

我对应于答案并编辑代码,但错误仍然发生在我的调试器中

警告:试图在上显示 谁的视图不在窗口中 等级制度

它仍然会出现多次,在显示
moviewcontroller
之后,是否有办法使
MenuViewController
成为主视图?或在电影结束/放映后将其关闭/删除


感谢您的指导。

您可以使您的
MenuViewController
初始视图控制器加载后立即调用:

[self presentModalViewController:MovieViewController animated:NO];
然后,当您想从屏幕上删除
MovieViewController
时,只需调用:

[self dismissModalViewControllerAnimated:YES];

moviewcontroller

中,您可以使您的
MenuViewController
初始视图控制器加载后立即调用:

[self presentModalViewController:MovieViewController animated:NO];
然后,当您想从屏幕上删除
MovieViewController
时,只需调用:

[self dismissModalViewControllerAnimated:YES];

moviewcontroller
中,为了尝试回答这个问题,我假设

主视图

你是说根视图

一个简单的解决方案是,当您启动应用程序时,将创建一个导航控制器来管理视图控制器的堆栈。此导航控制器有一个根控制器,您应该将其设置为
MenuViewController
(这应该是加载的第一个视图控制器),因为这是您要返回的控制器。您可以将
MovieViewController
显示为
MenuViewController
上方的视图,这样当
MovieViewController
被解除时,您将看到
MenuViewController


另一方面,在iOS编程中,呈现初始屏幕通常不是一个好的做法,初始屏幕是一个没有功能价值的屏幕,除了在加载和呈现应用程序相关信息时延迟主视图的呈现

为了回答这个问题,我假设当你说

主视图

你是说根视图

一个简单的解决方案是,当您启动应用程序时,将创建一个导航控制器来管理视图控制器的堆栈。此导航控制器有一个根控制器,您应该将其设置为
MenuViewController
(这应该是加载的第一个视图控制器),因为这是您要返回的控制器。您可以将
MovieViewController
显示为
MenuViewController
上方的视图,这样当
MovieViewController
被解除时,您将看到
MenuViewController


另一方面,在iOS编程中,呈现初始屏幕通常不是一个好的做法,初始屏幕是一个没有功能价值的屏幕,除了在加载和呈现应用程序相关信息时延迟主视图的呈现

您是指通过
appdelegate
启动屏幕吗?我不是在那里展示它,而是在另一个视图控制器中。你能再解释一下你说的最后一句话吗:
顺便说一句,在iOS编程中,呈现初始屏幕通常不是好的做法因为Im有点新。appdelegate不是呈现给用户的东西,它有助于管理应用程序级属性和操作。我在回答中添加了一个简短的解释,说明我所说的闪屏是什么意思,这样我的应用程序可能会被它拒绝?但我的客户希望他们的简介出现在应用程序中。不,不会因此而被拒绝。你需要应用程序。通过?或者它被拒绝了?你的意思是通过
appdelegate
splash screen
?我不是在那里展示它,而是在另一个视图控制器中。你能再解释一下你说的最后一句话吗:
顺便说一句,在iOS编程中,呈现初始屏幕通常不是好的做法因为Im有点新。appdelegate不是呈现给用户的东西,它有助于管理应用程序级属性和操作。我在回答中添加了一个简短的解释,说明我所说的闪屏是什么意思,这样我的应用程序可能会被它拒绝?但我的客户希望他们的简介出现在应用程序中。不,不会因此而被拒绝。你需要应用程序。通过?还是被拒绝了?