问题描述
我是 SwiftUI 布局的初学者(不是编码),但我遇到了问题
代码如下:
var body: some View {
NavigationView {
vstack {
Form {
TextField("Nome",text: $name)
}
.navigationBarTitle("Aggiungi dispensa",displayMode: .inline)
.navigationBarItems(trailing: Button("Aggiungi") {
if self.name.count > 0 {
let item = dispItem(name: self.name)
self.dispense.items.append(item)
}
self.name = ""
})
List {
let sortedItems = dispense.items.sorted {
$0.name < $1.name
}
ForEach(sortedItems) { item in
Text(item.name)
.font(.headline)
}
.onDelete(perform: removeItems)
}
}
}
}
基本上是一个由Form和List组成的vstack 但是我不明白顶部的空白区域以及Form和List之间的空白区域。
谢谢 马可
解决方法
正如@Asperi 在其评论中的链接中指出的那样,您可以使用 VStack(spacing: 0)
删除 Form
和 List
之间的空格。
对于导航栏链接和标题之间的空间,您似乎将 NavigationView
项相互嵌套。
调用此视图的视图(是否称为“Impostazione”?)有一个 NavigationView
,因此您的子视图(“Aggiungi Dispensa”)不需要自己的 NavigationView