SwiftUI - 如何脉动图像不透明度?

Posted

技术标签:

【中文标题】SwiftUI - 如何脉动图像不透明度?【英文标题】:SwiftUI - how to pulsate image opacity? 【发布时间】:2020-05-13 15:06:35 【问题描述】:

我在 SwiftUI 中有一个图像,我想永远“脉动”(每秒钟左右来来去去)。

我尝试了很多方法,但似乎无法获得我想要的效果。我尝试过的其中一件事是下面的代码(似乎什么也没做!:))。

Image(systemName: "dot.radiowaves.left.and.right" )
.foregroundColor(.blue)
.transition(.opacity)
.animation(Animation.easeInOut(duration: 1)
    .repeatForever(autoreverses: true))

有什么想法吗?

【问题讨论】:

【参考方案1】:

这是一种方法。使用 Xcode 11.4 / ios 13.4 测试

struct DemoImagePulsate: View 
    @State private var value = 1.0
    var body: some View 
        Image(systemName: "dot.radiowaves.left.and.right" )
            .foregroundColor(.blue)
            .opacity(value)
            .animation(Animation.easeInOut(duration: 1).repeatForever(autoreverses: true))
        .onAppear  self.value = 0.3 
    

【讨论】:

你能解释一下这里发生了什么吗?我不知道value 的更改位置...

以上是关于SwiftUI - 如何脉动图像不透明度?的主要内容,如果未能解决你的问题,请参考以下文章

带有常规文本的 SwiftUI 低不透明度按钮

ScrollView 位置数据 / SwiftUi

SwiftUI 动画:如何延迟重复动画

如何在 SwiftUI 中以降低透明度为菜单项获取 AccentColor 背景?

SwiftUI:如何使列表视图透明?如何更改列表视图背景颜色?

Mac 上的 SwiftUI:帮助文本即使在不透明度为零的视图中也始终可见