Я пытаюсь вызвать кнопку, когда пользователь нажимает на фоновую область представления. В качестве решения я решил сделать кнопку и поместить вид в кнопку как метку. Но проблема в том, что кнопка срабатывает даже на TextField, а иногда и на другой кнопке внутри.
Как я могу отключить кнопку "Назад" в некоторых представлениях (в данном случае TextField и Button), которые я выбираю?
Я прилагаю свой код ниже и отрендеренный просмотр .
import SwiftUI
struct ButtonOnbutton: View {
@State var memo: String = ""
var body: some View {
Button(action: {
print("down button clicked")
}) {
VStack(spacing: 10) {
Text("before")
.foregroundColor(.white)
TextField("type memo", text: $memo)
.font(.custom("SFProDisplay-Regular", size: 12))
.textFieldStyle(RoundedBorderTextFieldStyle())
Text("after")
.foregroundColor(.white)
Button(action: {
print("inside button clicked")
}) {
Text("inside button")
.foregroundColor(.white)
}
.background(Color.red)
}
}
.background(Color.blue)
.padding()
}
}
struct buttonOnbutton_Previews: PreviewProvider {
static var previews: some View {
ButtonOnbutton()
}
}