【发布时间】:2020-11-14 00:58:12
【问题描述】:
我正在尝试使用 Xcode 创建一个主/详细应用程序。
我使用模板创建了我的项目,并尝试在我称为 EditingView 的详细视图中创建一个特殊布局。
我阅读了 SwiftUI 教程,看起来很简单,但在实践中我发现了一些障碍。
我决定在这部分代码中放置一个单独的视图:
struct DetailView: View {
var selectedDate: Date?
var body: some View {
Group{
EditingView
}.navigationBarTitle(Text("Detail"))
}
}
EditingView 类似于
import Foundation
import SwiftUI
final class EditingView: View
{
var body: some View {
var mainVertical: VStack
{
…
…
…
}
}
}
实际上上面的代码 sn-p 是我尝试过的几个变种之一,每个变种都会导致奇怪的错误。
我的目标是创建一个布局,同时拥有对控件的引用,例如
var myButton:Button()
有了这些引用,就会出现类型和返回值的复杂问题。
但如果没有它们,我也会遇到错误,例如每个控件都需要参数类型,例如 堆栈 或按钮
错误具有修复选项,该选项会写入编译器也无法识别的内容,从而导致更多错误和复杂性。
这是一团糟,没有任何作用,EditingView 必须是 final 但如果我输入 final 关键字它是相同的,那么它说它不符合 View 协议。然后开始抱怨初始化器、闭包等等。
我非常想坚持原生,但我在 Xcode 上遗漏了什么吗? 你有经验的程序员你怎么看?是否有解决方案至少有一个最小的工作示例? 我有最新的 Xcode 版本。
【问题讨论】:
标签: swift layout swiftui native