SwiftUI
1 @Environment(.editMode) var isEditMode 2 VStack(alignment: .leading, spacing: 10) { 3 HStack{ 4 Text("Title") 5 .frame(width:100, alignment: .trailing) 6 if self.isEditMode?.wrappedValue == .inactive { 7 TextField("Title", text: $test.title) 8 9 }else { 10 TextField("Title", text: $test.title) 11 .padding(.all, 4.0).border(Color.gray, width: 2) 12 } 13 Spacer() 14 } 15 HStack{ 16 Text("Username") 17 .frame(width:100, alignment: .trailing) 18 if self.isEditMode?.wrappedValue == .inactive { 19 TextField("Username", text: $test.username) 20 }else { 21 TextField("Username", text: $test.username) 22 .padding(.all, 4.0).border(Color.gray, width: 2) 23 } 24 Spacer() 25 } 26} 27.navigationBarItems(trailing: EditButton())
との記述で
1)画面右上Editを押下するとDoneに変わります。
2)そのDoneを押下するとEditに戻ります。
2)でDBの更新処理を実装したいのですが、
swiftUI
1EditButton(action:{更新処理...})
の記載はできないようです。
タイミングは
swiftUI
1 2 if isEditMode?.wrappedValue.isEditing ?? false { 3 Text("編集モードON").onDisappear(){print("x")} 4 } else{ 5 Text("編集モードOFF") 6 }
swiftUI
1Text("編集モードON").onDisappear(){print("x")}
ですが?
スッキリした方法の
ご教授をお願いします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。