在 Swift 中进行应用内购买时从不同的视图控制器隐藏 UIButton
Hide UIButton from different View Controller when In App Purchase is made in Swift
我有两个视图控制器,ViewController 一个是带有按钮的主视图控制器,而 ViewController 另一个是应用程序内购买。当在 ViewController 二上进行应用内购买时,我需要在 ViewController 一上隐藏一个按钮。
请使用Swift语言
提供帮助
查看控制器一键:
@IBOutlet weak var inAppBtn: UIButton!
视图控制器二:
我在这里关闭了 View Controller Two 但我需要接收 AppBtn 并将其放入此处并隐藏它。
@IBAction func continueBtn(_ sender: Any) {
if SKPaymentQueue.canMakePayments() {
let paymentRequest = SKMutablePayment()
paymentRequest.productIdentifier = productID
dismiss(animated: true, completion: nil)
SKPaymentQueue.default().add(paymentRequest)
} else {
print("user unable to make payments")
}
}
你可以尝试在你的函数中添加这个在 ViewController 中关闭之前继续 tn To
if let firstVc = self.presentingViewController as? ViewControllerOne{
firstVc.yourButton.isHidden = true
}
当购买情况发生变化(即用户购买)时,您应该始终将已购买的事实存储在中央持久位置,例如用户默认值。
现在任何视图控制器都可以检查 viewWillAppear
或其他地方的 UserDefaults,并进行任何必要的更改,例如隐藏按钮(如果用户已经购买)。
(如果你希望可见界面在用户购买时立即改变,那么你可以也使用NotificationCenter来post一个Notification,其他view controller可以注册以了解更改。)
我有两个视图控制器,ViewController 一个是带有按钮的主视图控制器,而 ViewController 另一个是应用程序内购买。当在 ViewController 二上进行应用内购买时,我需要在 ViewController 一上隐藏一个按钮。
请使用Swift语言
提供帮助查看控制器一键:
@IBOutlet weak var inAppBtn: UIButton!
视图控制器二:
我在这里关闭了 View Controller Two 但我需要接收 AppBtn 并将其放入此处并隐藏它。
@IBAction func continueBtn(_ sender: Any) {
if SKPaymentQueue.canMakePayments() {
let paymentRequest = SKMutablePayment()
paymentRequest.productIdentifier = productID
dismiss(animated: true, completion: nil)
SKPaymentQueue.default().add(paymentRequest)
} else {
print("user unable to make payments")
}
}
你可以尝试在你的函数中添加这个在 ViewController 中关闭之前继续 tn To
if let firstVc = self.presentingViewController as? ViewControllerOne{
firstVc.yourButton.isHidden = true
}
当购买情况发生变化(即用户购买)时,您应该始终将已购买的事实存储在中央持久位置,例如用户默认值。
现在任何视图控制器都可以检查 viewWillAppear
或其他地方的 UserDefaults,并进行任何必要的更改,例如隐藏按钮(如果用户已经购买)。
(如果你希望可见界面在用户购买时立即改变,那么你可以也使用NotificationCenter来post一个Notification,其他view controller可以注册以了解更改。)