Код: Выделить всё
struct ButtonTapTest: View {
let items = [1, 2, 3]
var body: some View {
List {
ForEach(items, id:\.self) { item in
CellTestView()
}
}
}
}
struct CellTestView:View {
var body: some View {
VStack {
Button {
print("TOP")
} label: {
Image(systemName: "play.fill")
.font(.system(size: 40))
.foregroundColor(.red)
}
.border(.red)
Spacer()
Button {
print("BOTTOM")
} label: {
Image(systemName: "play")
.font(.system(size: 40))
.foregroundColor(.red)
}
.border(.yellow)
}
}
}
< /p>
Проблема: < /p>
Действие обеих кнопок запускается в ячейке, независимо от того, где я нажимаю на CellTestView < /code> . Я хочу, чтобы индивидуальные действия кнопки были запускаются отдельно, каждая только когда ее кнопка нажимается, и не когда я нажимаю на улицу где -либо еще на ячейке. Не имеет значения, где я нажимаю на CellTestView , обе действия кнопки получают триггер, независимо от того, где на просмотре я нажимаю, и одновременно как «верх», так и «внизу».
Как я могу это исправить, чтобы две кнопки в ячейке получали нажатие независимо и только тогда, когда нажатие находится внутри соответствующей кнопки? Здесь "src =" https://i.sstatic.net/y4k6i.gif "/>
Подробнее здесь: https://stackoverflow.com/questions/703 ... not-tapped
Мобильная версия