[英]SwiftUI ButtonStyle - how to check if button is disabled or enabled?
[英]SwiftUI ButtonStyle scaleEffect animates button position changes
我們有幾個按鈕,它們設置了自定義 ButtonStyle,它們在單擊時縮放和更改這些按鈕的 alpha。 這些按鈕在一個工作表中,可以拖動。 使用 scaleEffect 時,如何防止按鈕的 position 被動畫化? 沒有按鈕樣式也沒關系,但顯然它不會在點擊時產生動畫。 有關問題,請參見 gif。 謝謝。
struct ScaleButtonStyle: ButtonStyle {
func makeBody(configuration: ButtonStyleConfiguration) -> some View {
configuration
.label
.animation(nil)
.scaleEffect(configuration.isPressed ? 0.95 : 1)
.opacity(configuration.isPressed ? 0.8 : 1)
.animation(.linear(duration: 0.2))
}
}
嘗試將 animation 鏈接到相關值,例如
.scaleEffect(configuration.isPressed ? 0.95 : 1)
.opacity(configuration.isPressed ? 0.8 : 1)
.animation(.linear(duration: 0.2), value: configuration.isPressed)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.