传递给不带参数的调用的参数 - TabView
Argument passed to call that takes no arguments - TabView
我创建了一个新的 SwiftUI 文件并使用 xcode,我确实添加了默认的 tabview,但它抛出了一个错误。我试图通过创建一个新的 Xcode 项目来重现此错误,但它运行良好。如果我删除 TabView 代码,它构建正常。
import SwiftUI
struct TabView: View {
@State var tabSelection = 0
var body: some View {
Text("wowcool")
TabView(selection: .constant(1)) {
Text("Tab Content 1").tabItem { Text("Tab Label 1") }.tag(1)
Text("Tab Content 2").tabItem { Text("Tab Label 2") }.tag(2)
}
}
}
struct TabView_Previews: PreviewProvider {
static var previews: some View {
TabView()
}
}
下面是我得到的:
尝试修复:
- 重新启动Xcode
- 清理项目
- 已删除派生数据
- 重新启动计算机
目前在 Xcode 13.3 和 macOS 12.3
您正在覆盖 SwiftUI 的 TabView。将您的视图重命名为其他名称。
这是由于类型冲突(您将自定义视图命名为系统一),所以
解决方案 1:
struct MyTabView: View {
...
TabView(selection: .constant(1)) {
...
}
解决方案 2:
struct TabView: View {
...
SwiftUI.TabView(selection: .constant(1)) {
...
}
注意:我会始终推荐解决方案 1,并且不要使用与系统类型相同的名称。
我创建了一个新的 SwiftUI 文件并使用 xcode,我确实添加了默认的 tabview,但它抛出了一个错误。我试图通过创建一个新的 Xcode 项目来重现此错误,但它运行良好。如果我删除 TabView 代码,它构建正常。
import SwiftUI
struct TabView: View {
@State var tabSelection = 0
var body: some View {
Text("wowcool")
TabView(selection: .constant(1)) {
Text("Tab Content 1").tabItem { Text("Tab Label 1") }.tag(1)
Text("Tab Content 2").tabItem { Text("Tab Label 2") }.tag(2)
}
}
}
struct TabView_Previews: PreviewProvider {
static var previews: some View {
TabView()
}
}
下面是我得到的:
尝试修复:
- 重新启动Xcode
- 清理项目
- 已删除派生数据
- 重新启动计算机
目前在 Xcode 13.3 和 macOS 12.3
您正在覆盖 SwiftUI 的 TabView。将您的视图重命名为其他名称。
这是由于类型冲突(您将自定义视图命名为系统一),所以
解决方案 1:
struct MyTabView: View {
...
TabView(selection: .constant(1)) {
...
}
解决方案 2:
struct TabView: View {
...
SwiftUI.TabView(selection: .constant(1)) {
...
}
注意:我会始终推荐解决方案 1,并且不要使用与系统类型相同的名称。