【发布时间】:2019-07-19 08:01:22
【问题描述】:
我对 SwiftUI 有疑问。我正在创建一个带有导航栏的列表,并且我想将导航栏模式设置为内联,我不希望它默认很大。但是当我将导航栏标题模式设置为内联时,应用程序崩溃了。
struct User {
var index: Int
var name: String
}
struct ContentView : View {
var users: [User] = [
User(index: 0, name: "Peter"),
User(index: 1, name: "Marko"),
User(index: 2, name: "John")]
var body: some View {
NavigationView {
List(users.identified(by: \.index)) {
UserRow(user: $0)
}
.navigationBarTitle(Text("Users"), displayMode: .inline)
}
}
}
struct UserRow: View {
var user: User
var body: some View {
Text(user.name)
}
}
我认为这是一个 SwiftUI 错误。
有人知道可能是什么问题吗?提前致谢。
【问题讨论】:
-
以上代码运行良好。也许其他一些问题可能会影响崩溃。您使用哪个 XCode Beta 版本?
-
我试过 beta 1 和最新的 beta 4。它总是崩溃。也许问题是因为我正在模拟器上进行测试。应用程序在行中崩溃:window.makeKeyAndVisible() 我收到错误消息:“nw_endpoint_get_type 以空端点调用 ... __nwlog_err_simulate_crash 模拟崩溃已经模拟 nw_endpoint_get_type 以空端点调用 ...”其他一些人也报告了类似的问题:@987654321 @
-
即使在 XCode 11 正式发布后仍然会发生这种情况。不确定它是否适用于准系统 SwiftUI 应用程序,但我们的案例没有 UIHostingController 包装 SwiftUI 视图。
-
我有同样的问题,因为我添加了 UINavigationBar.appearance().isTranslucent = false
-
看起来像 Swift UI 错误,
UINavigationBar.appearance().isTranslucent = false、navigationBarTitle - displayMode: .inline和.navigationViewStyle(StackNavigationViewStyle())组合让我崩溃了。我现在要删除UINavigationBar.appearance().isTranslucent = false来解决
标签: navigationbar swiftui ios13