Какую функцию я могу использовать для обновления изображения в Swift - PullRequest
0 голосов
/ 10 апреля 2020

Мне кажется, что это легко, но я не могу найти функцию для ее обновления.

Вопрос заключается в следующем: когда я нажимаю кнопку, чтобы изменить цвет изображения или заменить его другим изображением, я пробовал несколько способов в кнопке действие, но цвет по-прежнему не изменяется.

Нажмите кнопку, чтобы изменить цвет изображения или заменить его другим изображением

import SwiftUI

struct stackStar: View {
    @State var starStauts = [true, false, false]

    var body: some View {
        VStack {

                           Text("Click to add star")

                           HStack {

                            star(finished: starStauts[0])
                                   .padding(10)

                            star(finished: starStauts[1])
                                   .padding(10)
                            star(finished: starStauts[2])
                                   .padding(10)

                           }




                Button(action: {
                    self.starStauts[0] = true
//                    star(finished: self.starStauts[0])

                        }) {
                            Image(systemName: "play.fill")
                                .foregroundColor(Color.blue)
                                .padding(10)

                                             }

                }
    }
}

struct stackStar_Previews: PreviewProvider {
    static var previews: some View {
        stackStar()
    }
}



struct star: View {

    let finished: Bool

       var body: some View {
           Group{
               if finished {
                   VStack {
                   Image(systemName: "star.fill")
                            .foregroundColor(Color.yellow)
                   }
               }
               else{
                VStack {
                        Image(systemName: "star.fill")
                            .foregroundColor(Color.gray)
                                 }
            }

           }

          }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...