Swiftui 如何在一秒钟内显示图像?迅捷

Swiftui 如何在一秒钟内显示图像?迅捷,swiftui,display,Swiftui,Display,我想在球员达到目标时,展示一张图像一秒钟。我本想发出警报,但这会减慢比赛速度。我只希望图像在屏幕顶部停留一秒钟,然后消失,直到下一个成就 示例代码如下: var TapNumber = 0 func ScoreUp() { TapNumber += 1 if TapNumber == 100 { showImage() } } func showImage() { // this is the function I want to create but. I do not kn

我想在球员达到目标时,展示一张图像一秒钟。我本想发出警报,但这会减慢比赛速度。我只希望图像在屏幕顶部停留一秒钟,然后消失,直到下一个成就

示例代码如下:

var TapNumber = 0

func ScoreUp() {

TapNumber += 1

 if TapNumber == 100 {
 showImage()
 }
}


func showImage() {
 // this is the function I want to create but. I do not know how
 show image("YouEarnedAPointImage") for one second
}

下面是一个可能方法的演示

struct DemoShowImage1Sec: View {
    @State private var showingImage = false
    var body: some View {
        ZStack {
            VStack {
                Text("Main Content")
                Button("Simulate") { self.showImage() }
            }
            if showingImage {
                Image(systemName: "gift.fill")
                    .resizable()
                    .frame(width: 100, height: 100)
                    .background(Color.yellow)
            }
        }
    }

    private func showImage() {
        self.showingImage = true
        DispatchQueue.main.asyncAfter(deadline: .now() + 1) {
            self.showingImage = false
        }
    }
}