View 消失时退出 EditMode
Exiting EditMode When View Disappears
我用 EditButton
输入 EditMode
,我想在我的 view
消失时离开它,这样 EditMode
就不会继续到下一个 view
,这是我的代码:
@State var array = [1,2,3,4]
var body : some View {
VStack{
HStack{
Spacer()
EditButton()
}
List{
ForEach(self.array){ int in
Text(int)
}
}
}
}
当用户移动到具有不同列表的不同视图时,没有在手前按 EditButton
上的完成,EditMode
保留,但我希望它变成 .inactive
.
您可以使用 @Environment(\.editMode)
并在 onDisappear
中将其设置为 .inactive
:
struct ContentView: View {
@Environment(\.editMode) var editMode
var body: some View {
VStack {
...
}
.onDisappear {
editMode?.wrappedValue = .inactive
}
}
}
我用 EditButton
输入 EditMode
,我想在我的 view
消失时离开它,这样 EditMode
就不会继续到下一个 view
,这是我的代码:
@State var array = [1,2,3,4]
var body : some View {
VStack{
HStack{
Spacer()
EditButton()
}
List{
ForEach(self.array){ int in
Text(int)
}
}
}
}
当用户移动到具有不同列表的不同视图时,没有在手前按 EditButton
上的完成,EditMode
保留,但我希望它变成 .inactive
.
您可以使用 @Environment(\.editMode)
并在 onDisappear
中将其设置为 .inactive
:
struct ContentView: View {
@Environment(\.editMode) var editMode
var body: some View {
VStack {
...
}
.onDisappear {
editMode?.wrappedValue = .inactive
}
}
}