0

我有一个有趣的问题。我有两个屏幕,我需要第三个屏幕元素(按钮、标签)是静态的,并且当您从一个屏幕移动到另一个屏幕时不会改变。. 所以 MAIN DISPLAY 1 会改变, DISPLAY 2 也会改变,但按钮和其他(例如标签)需要是静态的。

非常感谢所有帮助,抱歉,我没有任何代码解决这个问题。因为我不知道这是怎么做的...

4

4 回答 4

0

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

如果用户可以从一个屏幕导航到另一个屏幕,那么您将必须创建多个视图控制器(可以通过其他方式完成,但这是最简单和最好的方式),它们将拥有自己的 UI,这很容易在这样的故事板中创建:

创建一个使用故事板的新项目(您可以使用支持您需要的 Xcode 模板)

在您生成的故事板中,拖放一个新的 UINavigationController,然后在Attributes inspector检查Is initial view controller 在此处输入图像描述

将另一个 UIViewController 拖到您的故事板中,选择您的导航控制器,按住右键并拖动到新添加的视图控制器,将出现一个弹出窗口并从该弹出窗口中选择root view controller。现在新添加的视图控制器将是应用程序将显示的第一个视图。在此视图控制器上添加您的 UI 元素(按钮、标签等)。如果您希望在用户点击按钮时显示另一个屏幕,请拖动另一个视图控制器并选择要从中显示下一个屏幕的按钮,按住右键单击拖动到新添加的视图控制器,从弹出窗口中选择push。现在,当用户点击按钮时,将显示下一个视图控制器,并且作为奖励,因为您使用 iOS,系统将创建一个后退按钮,以便您可以返回到您的第一个视图控制器。

好的,这是一个基本教程,您可以从中开始和扩展,但为此您必须阅读更多内容,在 google/SO 上花费数夜寻找解决方案,您将牢记苹果文档和其他需要的东西你可以成为一名出色的 iOS 开发人员。

我的 iOS 力量与你同在,史蒂夫乔布斯注意你的脚步。

于 2013-05-17T08:01:01.480 回答
0

这不是我的想法:您可以将视图放入您的 uiwindow 并将您的静态元素放在那里,然后为 display1 和 display2 提供透明背景。然后您可以让两个显示器将它们的触摸转发到背景元素以对按钮进行操作。对不起,我没有任何代码,但我从未尝试过;)

于 2013-05-16T20:24:35.723 回答
0

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

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

然后在你实例化的视图控制器中设置一个静态变量来保存视图控制器的实例:

public static StaticViewController staticViewController;

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

staticViewController = this;

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

使用简单的 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);
            }
于 2015-02-22T11:54:04.770 回答
-1

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

于 2013-05-16T20:32:21.993 回答