SwiftUI:条件onDelete
我试图创建一个列表,只允许用户在进入编辑模式后删除。我试图在onDelete修饰符中使用三元操作,但无法理解。有什么建议吗 这是我的密码:SwiftUI:条件onDelete,swiftui,Swiftui,我试图创建一个列表,只允许用户在进入编辑模式后删除。我试图在onDelete修饰符中使用三元操作,但无法理解。有什么建议吗 这是我的密码: struct ContentView: View { @State private var stuff = ["First", "Second", "Third"] @State private var check = false var body: some Vi
struct ContentView: View {
@State private var stuff = ["First", "Second", "Third"]
@State private var check = false
var body: some View {
Form {
Button(action: { check.toggle() }, label: { Text(check ? "Editing" : "Edit") })
ForEach(0..<stuff.count) { items in
Section{ Text(stuff[items]) }
}
.onDelete(perform: self.deleteItem)
}
}
private func deleteItem(at indexSet: IndexSet) {
self.stuff.remove(atOffsets: indexSet)
}
}
struct ContentView:View{
@国家私有变量=[“第一”、“第二”、“第三”]
@状态私有变量检查=false
var body:一些观点{
形式{
按钮(操作:{check.toggle()},标签:{Text(检查?“编辑”:“编辑”)})
ForEach(0..我假设您查找以下内容
var body: some View {
Form {
Button(action: { check.toggle() }, label: { Text(check ? "Editing" : "Edit") })
ForEach(0..<stuff.count) { items in
Section{ Text(stuff[items]) }
}
.onDelete(perform: self.deleteItem)
.deleteDisabled(!check) // << this one !!
}
}
var主体:一些视图{
形式{
按钮(操作:{check.toggle()},标签:{Text(检查?“编辑”:“编辑”)})
ForEach(0..struct ContentView:View{
@国营私营
var stuff=[“第一”、“第二”、“第三”]
var body:一些观点{
导航视图{
形式{
ForEach(0。。
struct ContentView: View {
@State private
var stuff = ["First", "Second", "Third"]
var body: some View {
NavigationView {
Form {
ForEach(0..<stuff.count) { item in
Section {
Text(stuff[item])
}
}
.onDelete(
perform: delete)
}
.navigationBarItems(
trailing:
EditButton()
)
.navigationTitle("Test")
}
}
}
extension ContentView {
private func delete(at indexSet: IndexSet) {
stuff.remove(atOffsets: indexSet)
}
}