Swift 如何在UILabel中显示本地产品价格?

Swift 如何在UILabel中显示本地产品价格?,swift,Swift,我想获得带有货币符号的本地化应用程序内购买价格,并将其显示在UILabel上。但我不知道怎么做,因为我不知道如何获取SKProduct对象。也许可以使用apple产品id获取它? extension SKProduct { /// - returns: The cost of the product formatted in the local currency. var regularPrice: String? { let formatter = NumberFormatter()

我想获得带有货币符号的本地化应用程序内购买价格,并将其显示在UILabel上。但我不知道怎么做,因为我不知道如何获取SKProduct对象。也许可以使用apple产品id获取它?

extension SKProduct {

/// - returns: The cost of the product formatted in the local currency.
var regularPrice: String? {
    let formatter = NumberFormatter()
    formatter.numberStyle = .currency
    formatter.locale = self.priceLocale
    return formatter.string(from: self.price)
}}
编辑:

SKProduct对象作为SKProductsResponse的一部分返回 对象(c)

如何获取产品信息:

另请观看WWDC提供的有用视频:

总结上述文件:

class ProductResolver: NSObject, SKProductsRequestDelegate {
    // Keep a strong reference to the product request.
    var request: SKProductsRequest!

    func getProducts(productIdentifiers: [String]) {
        let productIdentifiers = Set(productIdentifiers)
        request = SKProductsRequest(productIdentifiers: productIdentifiers)
        request.delegate = self
        request.start()
    }

    // SKProductsRequestDelegate protocol method.
    func productsRequest(_ request: SKProductsRequest, didReceive response: SKProductsResponse) {
        for product in response.products {
            print("Local currency \(product.regularPrice)")
        }
    }
} 


编辑了我的问题并添加了如何在viewDidLoad()中调用此函数的代码。但我仍然不知道如何在UILabel上显示产品id1的价格?您可以使用带有故事板或nib的IBOutlets。也可以通过编程方式创建UILabel。通过设置所有文本到UILabel后
class ProductResolver: NSObject, SKProductsRequestDelegate {
    // Keep a strong reference to the product request.
    var request: SKProductsRequest!

    func getProducts(productIdentifiers: [String]) {
        let productIdentifiers = Set(productIdentifiers)
        request = SKProductsRequest(productIdentifiers: productIdentifiers)
        request.delegate = self
        request.start()
    }

    // SKProductsRequestDelegate protocol method.
    func productsRequest(_ request: SKProductsRequest, didReceive response: SKProductsResponse) {
        for product in response.products {
            print("Local currency \(product.regularPrice)")
        }
    }
}