我用EditMode
输入EditButton
,并且我想在我的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
。 / p>
答案 0 :(得分:1)
您可以使用@Environment(\.editMode)
并将其设置为.inactive
中的onDisappear
:
struct ContentView: View {
@Environment(\.editMode) var editMode
var body: some View {
VStack {
...
}
.onDisappear {
editMode?.wrappedValue = .inactive
}
}
}