SwiftUI - Как я могу изменить свойство @State с помощью элемента списка? - PullRequest
0 голосов
/ 29 июня 2019

В моем списке есть несколько статических предметов.Я хочу динамически скрывать / отображать элемент, когда пользователь касается другого элемента списка, т.е. я хочу изменить свойство @State, когда пользователь касается определенного элемента списка.

Как это сделать?

struct EditTransactionView : View {
    @State var date = Date()
    @State private var showingDateSelector = false // How do I change this with a tap on the date list item?

    var body: some View {
        NavigationView {
            List {
                DateView(date: $date)
                if showingDateSelector {
                    DatePicker(
                        $date,
                        maximumDate: Date(),
                        displayedComponents: .date )
                }
            }
        }
    }
}

1 Ответ

0 голосов
/ 29 июня 2019

Примерно так:

struct EditTransactionView : View {
    @State var date = Date()
    @State private var showingDateSelector = false // How do I change this with a tap on the date list item?

    var body: some View {
        NavigationView {
            List {
                Button(action: { self.showingDateSelector.toggle() }) {
                    DateView(date: $date)
                }
                if showingDateSelector {
                    DatePicker(
                        $date,
                        maximumDate: Date(),
                        displayedComponents: .date )
                }
            }
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...