【问题标题】:SwiftUI low opacity button with regular text带有常规文本的 SwiftUI 低不透明度按钮
【发布时间】:2021-03-11 10:14:34
【问题描述】:

我正在使用 SwiftUI 构建一个应用程序,但确实遇到了一些不便。我正在使用带有带有文本的导航链接的按钮来导航到不同的页面。我需要圆圈具有低不透明度,以便您仍然可以查看它们,但是当我这样做时,文本也会立即变为低不透明度。如何防止文本改变不透明度(或保持正常不透明度)。

Button(action: {
    print("Floating Button Click")
}, label: {
    NavigationLink(destination: QuestionView(bodyPart: bodyPart, caseData: CaseData(bodyPart: bodyPart))){
        Text(String(describing: bodyPart.rawValue))
            .foregroundColor(.white)
            .frame(width: size, height: size, alignment: .center)
    }
})
.background(Color.blue)
.opacity(0.5)
.clipShape(Circle())

我已经尝试为文本赋予自己的不透明度,但这并没有做任何事情,因为它仍然会被覆盖。

有没有人对此有解决方案,我期待看到任何答案。

【问题讨论】:

    标签: ios button swiftui


    【解决方案1】:

    您只需像这样对背景应用不透明度:

    .background(Color.blue.opacity(0.5))
    

    而不是整个View,就像这样:

    .background(Color.blue)
    .opacity(0.5)
    

    【讨论】:

    • 感谢您的解决方案,我自己也想不出这个,但这似乎是一个相当容易解决的问题。我会将其标记为已解决。
    猜你喜欢
    • 1970-01-01
    • 2011-01-25
    • 2014-01-05
    • 2020-12-14
    • 2010-12-17
    • 2014-05-31
    • 2022-01-24
    • 2015-11-19
    • 2020-04-08
    相关资源
    最近更新 更多