在用Button的时候 默认有个点击的效果,那如何来自定义这个效果呢
那就需要这个
.buttonStyle()
配合上自定义的Style
struct MyButtonStyle: ButtonStyle {
public func makeBody(configuration: MyButtonStyle.Configuration) -> some View {
configuration.label
.foregroundColor(.white)
.compositingGroup()
.opacity(configuration.isPressed ? 0.95 : 1.0) //透明度
.scaleEffect(configuration.isPressed ? 0.95 : 1.0) //缩放
.animation(.spring())
}
}
Button(action: {}, label: {
VStack{
Image(systemName: "chevron.forward.square")
.resizable()
.renderingMode(.template)
.frame(width: 30, height: 30)
}
}).buttonStyle(MyButtonStyle())
网友评论