swift - 如何在窗口中添加 View ,该 View 将在每个 View Controller 的滑动时显示?

标签 swift io uiwindow

我有这样的场景,比如我有许多带有导航 Controller 的 View Controller ,并且该导航 Controller 是窗口的 Root View 。现在,无论屏幕上显示哪个 View Controller ,如果我滑动,一个 View 都会显示一些选项。那么应该采取什么方法来开发这个呢?那么我可以将导航 Controller 设置为窗口的 Root View 并在窗口中添加 1 个 View 并在窗口中添加滑动手势吗?因此,当向左滑动时,将显示在窗口中添加的 View ,并且单击任何选项时,我的新 View Controller 将被推送?

最佳答案

我不确定我是否遵循你的要求,但让我们看看我能想到什么。为了简单起见,您应该使用 Storyboard。您应该将导航 Controller 拖出右侧 View 。您应该选择该 Controller 并进入属性标签,并且在“ View Controller ”部分中有一个“是初始 View Controller ”复选框。选择它,ios 会自动将其作为窗口的 Root View Controller 。从这里您应该为导航 Controller 创建一个子类。将其称为“应用程序导航 Controller ”或“主导航 Controller ”并覆盖“viewdidload”。由于这是 Root View Controller ,并且您从不打算更改根,因此应该只调用“viewdidload”一次。从该函数中,您应该分配 2 个滑动手势。一个用于右侧,另一个用于左侧。

这应该负责将导航 Controller 设置为根并设置向左和向右滑动。现在,如果您想要在导航 Controller 中使用 View ,则必须进入 Storyboard并将 View Controller 对象添加到屏幕上。完成此操作后,右键单击导航 Controller 并将其拖动到新添加的 viewController 上。释放鼠标按钮应该会弹出一个窗口,您可以在其中选择“ Root View Controller ”,即导航 Controller 的根。在此处添加您的 View ,根据您的解释,这听起来像是您想要一个表格 View 。

从你的问题来看,很难确定你到底想要什么。似乎您想要一个由导航 Controller 控制的标准 View Controller 堆栈。带有侧面菜单。如果是这种情况,那么您将不得不使用第三方库,因为苹果不提供侧面菜单小部件。然后事情会变得更加复杂,应用程序的根应该只是一个带有 2 个容器 View 的 View Controller ,然后将 View Controller 添加到这些容器中。主容器将容纳上面解释的导航 Controller 。另一个容器,也称为侧面菜单,将容纳带有 TableView 的 View Controller 。在 Storyboard中,您只需右键容器 View 并将其拖到/释放所需的 View Controller ,然后选择选项“ View Controller ”。您必须设置自动布局并在滑动时为约束设置动画。

我可以继续说一段时间,但也许您可以使用其中一些知识来完成您想要的事情。

关于swift - 如何在窗口中添加 View ,该 View 将在每个 View Controller 的滑动时显示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33235235/

相关文章:

swift - 使用谷歌地图 ios sdk 和 swiftui 的自定义标记信息窗口

parameters - Swift 会自动克隆参数吗?

c - 为什么我不能在 C 中读取 Ctrl+S?

ios - makeKeyWindow 与 makeKeyAndVisible

ios - 如何更改 iOS Swift 4 中加载的 NibView 的位置?

ios - Swift ivars : set all constants in initializer, 或具有干净的初始化程序并放弃常量?

c# - 如何在 Windows XP 和 Windows 7 上枚举 SharePoint 文件夹中的文件夹和文件

java - System.out .write() 执行但不打印

iphone - 如何从单独的类更改 UIWindow 的颜色?

iOS 5.0 sendEvent 调用了两 [2] 次