iOS5 ベースの cocoa アプリの開発、以下の比較では、ローカライズが英語の場合は正常に動作しますが、ローカライズが韓国語の場合は失敗します。
//title is of type NSString
if([title isEqualToString:NSLocalizedString(@"Power",@"Power")])
韓国語のタイトルとローカライズされた文字列は明らかに同じです。
isEqualToString:
は韓国語/ユニコード文字列と一致しませんか?
iOS5 ベースの cocoa アプリの開発、以下の比較では、ローカライズが英語の場合は正常に動作しますが、ローカライズが韓国語の場合は失敗します。
//title is of type NSString
if([title isEqualToString:NSLocalizedString(@"Power",@"Power")])
韓国語のタイトルとローカライズされた文字列は明らかに同じです。
isEqualToString:
は韓国語/ユニコード文字列と一致しませんか?
NSStringのローカライズされた比較メソッド(、、、または)を使用すると、より良い結果が得られる-localizedCaseInsensitiveCompare:
場合-localizedCompare:
があり-localizedStandardCompare:
ます。
ただの推測。
私はそれが英語では機能しないと思いますが、あなたはあなたNSLocalizedString()
のアプリで英語の単語を使用しているのでそれらを使用するのはデフォルトであり、それがあなたにそれが機能すると思わせるものです。問題は他の場所にあるはずです。
次のことを確認してください:
NSLog(@"localized power = %@",NSLocalizedString(@"Power",@"Power"));
韓国語の翻訳を返します。