【问题标题】:iOS Apple Pay - Customize PKPaymentButtoniOS Apple Pay - 自定义 PKPaymentButton
【发布时间】:2023-03-18 17:38:01
【问题描述】:

我正在使用 PKPaymentButton 进行 ApplePay 集成,但想知道是否可以轻松自定义它。

let applePayButton = PKPaymentButton(type: PKPaymentButtonType.setUp, style: PKPaymentButtonStyle.black)
  1. 我们可以更改按钮样式吗? 设置ApplePay后,我想将buttonType更改为.buy,但没有找到解决方案。

  2. 我们可以删除圆角半径吗? 默认 ApplePay 按钮具有圆角半径。我不喜欢它并试图删除它。所以,我尝试使用图层,但没有成功。

    applePayButton.layer.cornerRadius = 0
    

如果我可以轻松更改 ApplePay 按钮属性,请告诉我。

【问题讨论】:

  • Apple 总是有可能不允许故意修改按钮的外观,也许是为了避免混淆(恶意或其他)。
  • 但是我将使用 Apple 支持的属性。
  • 我知道。我要说的是,也许他们对这个按钮做了一个例外——并忽略了对它的公共 API 属性更改——以(夸大)努力保护他们的客户。但这只是一个猜测,基于 Apple 的典型 m.o.我没有你的问题的答案。
  • 我明白了。如果您找到好的答案,请告诉我。

标签: ios swift applepay


【解决方案1】:

您还可以使用他的运行时属性更改按钮的外观:

    [self.applePayButton setValue:@(0) forKey:@"style"];

为黑色按钮传递 0,为白色 Apple Pay 按钮传递 2

【讨论】:

    【解决方案2】:
    1. 是的,您可以通过在运行时使用不同的 PKPaymentButtonStyle 重新创建 PKPaymentButton 来更改它。或者您可以编写自己的 PKPaymentButton 包装器来为您完成。

    2. 虽然 Apple 不建议更改 Apple Pay 按钮的外观,但这是可行的。同样,使用您的 PKPaymentButton 包装器,将 Apple Pay 按钮放在中心并更改包装器按钮的角半径,您也可以通过这种方式更改图标的大小。我在我的一些项目中这样做了,但没有得到 Apple 的任何消息。

    【讨论】:

    • 这就是我现在正在做的事情。
    【解决方案3】:

    Apple Pay Identity Guidelines 中,Apple 声明您不应更改 Apple Pay 按钮 (PKPaymentButton) 的圆角半径。

    【讨论】:

    • 是的,我们无法更改拐角半径。但是我们也不能更改按钮类型?
    • 要更改按钮样式,您需要重新创建 PKPaymentButton
    • 拐角半径限制似乎只适用于他们提供的资产中提供的艺术品,而不适用于 Apple Pay PKPaymentButton。此外,如果该类不打算使用圆角半径属性,那将是非常奇怪的。
    猜你喜欢
    • 2021-03-13
    • 2020-03-27
    • 2017-08-09
    • 2019-12-04
    • 2021-01-01
    • 2019-03-15
    • 1970-01-01
    • 2015-10-29
    • 1970-01-01
    相关资源
    最近更新 更多