Swiftui 快捷方式:有条件地显示不同的工作表项

Swiftui 快捷方式:有条件地显示不同的工作表项,swiftui,Swiftui,我很难理解如何使用。sheetitem:content:。我知道这里和其他平台上有很多信息,但我就是无法让它发挥作用 这是我想要的一个抽象观点——我不知道我在这里做错了什么: 导入快捷键 枚举SheetView:字符串,可识别{ 变量id:Self{Self} 案例表A=表A 案例表B=表B } 结构SheetViewTest:视图{ @国有私有var显示表:SheetView?=无 var body:一些观点{ 形式{ 按钮操作:{ showSheet=.sheetA printButton\

我很难理解如何使用。sheetitem:content:。我知道这里和其他平台上有很多信息,但我就是无法让它发挥作用

这是我想要的一个抽象观点——我不知道我在这里做错了什么:

导入快捷键 枚举SheetView:字符串,可识别{ 变量id:Self{Self} 案例表A=表A 案例表B=表B } 结构SheetViewTest:视图{ @国有私有var显示表:SheetView?=无 var body:一些观点{ 形式{ 按钮操作:{ showSheet=.sheetA printButton\showSheet?.rawValue点击… },标签:{ text sheetview.sheetA.rawValue } 按钮操作:{ showSheet=.sheetB printButton\showSheet?.rawValue点击… },标签:{ text sheetview.sheetB.rawValue } } .sheetitem:$showSheet{sheet->View in Textsheet.rawValue } } } 结构SheetViewTest_预览:PreviewProvider{ 静态var预览:一些视图{ 单视图测试 } } 我在身体上得到的错误如下:
协议类型“View”的值不能与“View”一致;只有struct/enum/class类型可以符合协议,这是由于.sheet修饰符导致的。当我注释掉它时,视图工作得很好…

只需删除从返回内容自动推断的闭包返回类型,即

    .sheet(item: $showSheet) { sheet in      // << here !!
        Text(sheet.rawValue)
    }

只需删除从返回内容自动推断的闭包返回类型,即

    .sheet(item: $showSheet) { sheet in      // << here !!
        Text(sheet.rawValue)
    }

你在开玩笑吗?这就是我今天下午浪费几个小时的原因?我的意思是,我知道技术上这是我的错/缺乏理解,但另一方面,代码完成等建议上述代码。。。不管怎么说,一如既往地帮了大忙!你在开玩笑吗?这就是我今天下午浪费几个小时的原因?我的意思是,我知道技术上这是我的错/缺乏理解,但另一方面,代码完成等建议上述代码。。。不管怎么说,一如既往地帮了大忙!