swift - 为什么我在切换屏幕时丢失了我的 SwiftUI 视图
问题描述
我有一个基于 SwiftUI 的原生 WatchOS 应用程序。我有 4 个视图,用户可以左右滑动来访问。此功能不是直接的 SwiftUI 功能,因此我使用的是 WKInterfaceController.reloadRootConrollers(withNamesandContext:) 但是屏幕有时会在滑动时加载一个空白屏幕。我看不出这段代码有什么问题...
import WatchKit
import Foundation
import SwiftUI
class HostingController : WKHostingController<MeetingView> {
override init(){
super.init()
displayViews()
}
func displayViews() {
WKInterfaceController.reloadRootControllers(withNamesAndContexts: [
(name: "OneViewController", context: [:] as AnyObject),
(name: "TwoViewController", context: [:] as AnyObject),
(name: "ThreeViewController", context: [:] as AnyObject),
(name: "FourViewController", context: [:] as AnyObject),
])
}
override var body: MainView {
return MainView()
}
}
解决方案
这里同样的问题。使用情节提要时也会发生。
推荐阅读
- c++ - C++ 何时在运算符重载函数前使用 &
- python - DRF 更改默认视图集的 lookup_field 以进行自定义操作
- web - 无法访问 Power Designer Web 门户
- javascript - Javascript警报根本不显示
- typo3 - TYPO3 - 页面渲染后的钩子/信号
- database - 如何在 laravel 中使用 Group by 查询?
- php - 不能将字符串偏移量用作 addressfield_widget_process() 中的数组
- python - 为什么在新测试图像上运行良好的卷积神经网络模型在视频流上失败?
- python - Anaconda 的最佳实践是设置需要在 Anaconda 找到的财务功能的 python 环境的方式吗?
- java - 如何在 Linux 中提高 Java SOAP Web 服务客户端性能