繁体   English   中英

制作按钮动作覆盖它的超级视图 swiftUI

[英]make Button action cover it's superview swiftUI

我需要制作一个填充它的容器视图并使所有视图可点击的按钮,但我失败了,它只使按钮内容大小可点击(这是 label 大小)

Button(action: {
       print("item Clicked")
       }) {
       Text("whyyyy")
}.frame(maxWidth: .infinity, maxHeight: .infinity).buttonStyle(PlainButtonStyle())

我知道我可以通过将我的容器视图放在按钮中来反转它,但我只是不喜欢这种风格我需要按钮在视图中,我知道我可以制作一个 tapGesture 但我想像 UIKit 一样感觉自由

您可以使用清晰的颜色内容使整个区域可点击。

struct ContentViewNewTest: View {
    var body: some View {
        ZStack {
            Color.red
            Button(action: {
                print("item Clicked")
            }) {
                Color.clear //<--- Here
            }
        }
    }
}

在关闭括号之前,只需在Text("whyyyy")下移动.frame(maxWidth: .infinity, maxHeight: .infinity)

编辑:还添加修饰符.background(Color.clear)

最后结果:

Button(action: {
       print("item Clicked")
       }) {
       Text("whyyyy")
          .frame(maxWidth: .infinity, maxHeight: .infinity)
          .background(Color.clear)
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM