如何在Xcode中的任何视图控制器的静态视图?

我有一个有趣的问题。 我有两个屏幕,我需要这将是第三个屏幕元素(button,标签)是静态的,不会改变,当你从一个屏幕移动到另一个。 。 所以MAIN DISPLAY 1将被改变,DISPLAY 2也被改变,但是button和其他的(例如标签)需要是静态的。

非常感谢所有帮助,对不起,我没有任何代码与这个问题。 因为我不知道这是怎么造成的

好吧,如果你有一个不会改变它的内容的UI,你必须考虑以下几点:

如果用户可以从一个屏幕导航到另一个屏幕,那么你将不得不创build多个视图控制器(它可以用其他方式完成,但是这是最简单和最好的方法),将有自己的用户界面,可以很容易在这样的故事板中创build:

创build一个使用storyboars的新项目(您可以使用支持您的需求的Xcode模板)

在你生成的故事板中,拖放一个新的UINavigationController,并在Attributes inspector检查Is initial view controller 在这里输入图像说明

将另一个UIViewController拖动到您的故事板,select您的导航控制器,按住右键并拖动到新添加的视图控制器,将出现一个popup窗口,并从该popup窗口中selectroot view controller 。 现在,新添加的视图控制器将是应用程序将显示的第一个视图。 在这个视图控制器添加你的UI元素(button,标签等)。 如果你想在用户点击一个button时显示另一个屏幕,拖动另一个视图控制器,并select你想要显示下一个屏幕的button,按住右键拖动到新添加的视图控制器,从popup式selectpush 。 现在,当用户点击button时,下一个视图控制器将被显示,并且作为奖励,因为您使用iOS,系统将创build一个后退button,以便您可以返回到您的第一个视图控制器。

好的,这是一个基本的教程,你可以从这里开始和扩展,但为此你需要阅读更多内容,在Google / SO上花费夜晚来寻找解决scheme,你将会学习苹果文档和其他所需的东西你可以成为一个优秀的iOS开发者。

我的iOS部队和你以及史蒂夫·乔布斯一起观看你的脚步。

这是我的头顶:你可以把视图放到你的uiwindow中,然后在那里放置你的静态元素,然后给display1和display2一个透明的背景。 那么你可以让两个显示器将它们的触摸转移到背景元素上,以在button上进行操作。 即时对不起,我没有任何代码,但我从来没有尝试过;)

更好的方法是像这样实例化你的ViewController:

 this.NavigationController.PresentModalViewController (StaticViewController.staticViewController, true); 

然后在你实例化的View Controller中,你设置一个静态variables来保存View Controller的实例:

 public static StaticViewController staticViewController; 

静态视图控制器第一次启动时:

 staticViewController = this; 

现在将来,当您启动静态视图控制器(从您的应用程序中的任何位置)时,您可以检查StaticViewController.staticViewControllervariables是否为空。

使用简单的if else逻辑来相应地加载它:

 if (StaticViewController.staticViewController == null) { StaticViewController.staticViewController staticViewController = this.Storyboard.InstantiateViewController ("StaticViewController") as StaticViewController; this.NavigationController.PresentModalViewController (StaticViewController.staticViewController, true); } else { if(!StaticViewController.staticViewController.IsBeingPresented) //safeguard against click happy users this.NavigationController.PresentModalViewController (StaticViewController.staticViewController, true); } 

您应该将静态视图添加到您的UINavigationController或用于pipe理多个控制器的任何控制器。