한국 원, 캄보디아 리엘 및이란 리알에 대해 10 진수를 통화로 변환하고 UILabel 텍스트에 결과를 표시 할 때 문제가 발생합니다.잘못된 기호가있는 UILabel + IRR, KRW 및 KHR 통화
변환 자체가 잘 통과하고 디버거에서 올바른 통화 기호를 볼 수 있습니다. 심지어 NSLog가 기호를 잘 인쇄합니다.
이 NSString 인스턴스를 UILabel 텍스트에 할당하면 통화 기호가 올바른 기호 대신 교차 상자로 표시됩니다. 사이에 다른 코드가 없습니다, 내가 사용하는 글꼴이 중요하지 않습니다.
유니 코드 값 (0x20A9)을 사용하거나 UTF8 표현 (\ xe2 \ x82 \ xa9)을 사용하여 ₩ (한글)을 인쇄하려했으나 레이블에있는 상자가 모두 나타납니다.
iPhone SDK 및 NSLocale (거의 170 개 통화)에서 지원되는 다른 통화는 통화가 얼마나 외모이더라도 완벽하게 작동합니다.
다른 사람이 같은 문제가 발생합니까? 이것을위한 "완치"가 있습니까?
감사
편집 :
-(NSString *)decimalToCurrency:(NSDecimalNumber *)value byLocale:(NSLocale *)locale
{
NSNumberFormatter *fmt = [[NSNumberFormatter alloc] init];
[fmt setLocale: locale];
[fmt setNumberStyle: NSNumberFormatterCurrencyStyle];
NSString *res = [fmt stringFromNumber: value];
[fmt release];
return res;
}
lbValue.text = [self decimalToCurrency: price byLocale: koreanLocale];
어떤 글꼴을 사용하고 있습니까? – kennytm
전혀 문제가되지 않습니다. Helvetica, Helvetica Neue, Times New Roman, Trebuched MS를 시도했습니다 ... – serb
"Arial Unicode MS"를 시도해보십시오. – kennytm