gpt4 book ai didi

navigation - 为 SwiftUI Apple Watch 应用实现基于页面的导航

转载 作者:行者123 更新时间:2023-12-02 10:57:20 28 4
gpt4 key购买 nike

我正在 SwiftUI 中构建 Apple Watch 应用,并希望实现基于页面的导航,以便当用户在主屏幕上向左滑动时,他们会被带到另一个 View 。

我了解如何使用 NavigationLink 让用户从一个屏幕移动到另一个屏幕,但不了解如何让用户通过向左或向右滑动从一个屏幕导航到另一个屏幕。

有人知道如何做到这一点吗?

最佳答案

这里是如何使用 SwiftUI 为 watchOS 实现基于页面的导航的指南。该描述基于Hacking with watchOS, SwiftUI edition :

首先,创建一个新的 SwiftUI View ,例如名为 CounterView。

其次,创建 WKHostingController 的子类以显示新的 SwiftUI View 。只需复制 HostingController.swift 中已有的 Controller 并将其名称更改为 CounterHostingController 即可。然后,文件 HostingController.swift 包含这两个 Controller :

class HostingController: WKHostingController<ContentView> {
override var body: ContentView {
return ContentView()
}
}

class CounterHostingController: WKHostingController<CounterView> {
override var body: CounterView {
return CounterView()
}
}

第三,通过打开文件 Interface.storyboard 并单击 Xcode 窗口右上角的 + 按钮,创建一个 Storyboard场景来存储新创建的托管 Controller 。在搜索框中输入“托管 Controller ”,拖出新的托管 Controller 并将其移动到现有托管 Controller 旁边。在身份检查器中(单击 Xcode 窗口右侧顶部第二个菜单中的第四项,该项目显示一个文档,左上角有一张图片,周围有文本 float ),将 Class 更改为“CounterHostingController”,然后选中“从目标继承模块”框。

第四,为了将这两个屏幕连接为同一用户界面的页面,请在 Storyboard 中按 Ctrl 键并用鼠标单击原始主机 Controller ,然后按住按键,同时将鼠标指针拖动到新 Controller 上,释放鼠标按钮后,选择关系转场的“下一页”。

关于navigation - 为 SwiftUI Apple Watch 应用实现基于页面的导航,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57331552/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com