2017-10-18 18 views
0

中国の店舗でアプリ内購入価格の文字列を設定しようとすると問題が発生しています。ゲーム内の商品が30.00rmbの場合は30.00円を表示したいが、現在はCN¥30.00を表示している。以下は、私が使用するコードです:中国元のアプリ購入通貨フォーマット

SKProduct* product 

NSNumberFormatter* formatter = [[NSNumberFormatter alloc] init]; 
formatter.locale = product.priceLocale; 
formatter.numberStyle = NSNumberFormatterCurrencyStyle; 
formatter.formatterBehavior = NSNumberFormatterBehavior10_4; 

return [formatter stringFromNumber:product.price] 

ここで、productはパラメータとして渡されるSKProductです。

これは他の通貨での他のすべてのアップルストアでも機能しますが、中国のAppleストアでは機能しません。

最終結果は30.00円です。

ありがとうございます!

PS。私が関連しているかもしれないもう一つのバグは、私が30,00と表示される値段の稀なケースを得ていることです。それはカンマと通貨記号なしです。多分これは何とか関係しているのでしょうか?

答えて

0

あなたは、コードを次のよう試すことができます::(

NSString *price = [NSString stringWithFormat:@"%@%@", [product.priceLocale objectForKey:NSLocaleCurrencySymbol], product.price]; 
+0

は、応答男いただきありがとうございますが、これは中国の通貨のために働くだろうが、それは最終的に彼らの通貨記号を持っている他の国のために動作しないでしょう例:100.00£)。しかし、私は問題の原因を突き止めました。ロケールは、ユーザーのアカウント領域と言語設定によって異なります。だから私のテストアカウントは中国に設定されていましたが、言語は英語に設定されていました。そのため、奇妙なロケールフォーマットを使用していました。 – Shinsuke

関連する問題