ios .refundRequestSheet在SwiftUI中无法正常工作

iqjalb3h  于 2023-08-08  发布在  iOS
关注(0)|答案(1)|浏览(133)

我想使用.refundRequestSheet方法在我的应用程序中由用户退款。它不能正常工作。
这里有问题。
我怎样才能知道用户的退款操作的结果?有[请求退款]按钮,当我点击它时什么也没有发生,它总是在退款视图消失后返回.userCancelled

.refundRequestSheet(
    for: selectedTransactionID ?? 0,
    isPresented: $refundSheetIsPresented
) { result in
    switch result {
    case .success(let status):
        switch status {
        case .success:
            log(" success")
        case .userCancelled:
            log(" userCancelled")
        @unknown default:
            log(" default")
        }
    case .failure(let error):
        log(error)
    }
}

字符串
在请求退款并再次请求退款后,将显示退款视图。但是消息是“您已经为这次购买请求了退款”,并且有一个按钮可以关闭视图,完成按钮。在退款视图中无法点击。

anhgbhbe

anhgbhbe1#

请这样尝试:

@State private var refundSheetIsPresented = false

// ...

Button("Request Refund") {
    refundSheetIsPresented = true // Show the refund view
}
.sheet(isPresented: $refundSheetIsPresented, content: {
    refundRequestSheet(
        for: selectedTransactionID ?? 0,
        isPresented: $refundSheetIsPresented
    ) { result in
        switch result {
        case .success(let status):
            switch status {
            case .success:
                log("Refund success")
            case .userCancelled:
                log("Refund userCancelled")
            @unknown default:
                log("Refund default")
            }
        case .failure(let error):
            log(error)
        }
    }
})

字符串

相关问题