【问题标题】:How to prevent button from animating when clicked单击时如何防止按钮动画
【发布时间】:2020-11-04 00:02:53
【问题描述】:

我试图阻止按钮在单击时产生动画,但我没有成功。

我尝试将UIButton.appearance().isHighlighted.adjustsImageWhenHighlighted.showsTouchWhenHiglighted 设置为false。我也试过:

Button(action: {}) {
   Text("X")
}
.animation(.none)

【问题讨论】:

    标签: ios animation button swiftui


    【解决方案1】:

    几乎,要在某个地方禁用动画,应该设置nil,比如

    Button(action: {}) {
       Text("X")
    }
    .animation(nil)     // << here !!
    

    使用 Xcode 12.1 / iOS 14.1 测试

    【讨论】:

    • 我使用的是相同的环境,但它只适用于第一次点击。之后,动画返回。
    【解决方案2】:

    我认为这个问题最纯粹的解决方案是不使用Button。 相反,您可以这样做:

    Text("X")
      .onTapGesture {
        print("clicked!")
      }
    

    【讨论】:

    • 我需要使用按钮。
    【解决方案3】:

    如果您无法以任何其他方式使其工作,您可以禁用该按钮并为其附加轻击手势识别器。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多