저는 일하고있는 iPhone 앱에 현지화를 적용하고 있으며 천천히 모든 텍스트/문자열/라벨을 응용 프로그램 전체에 걸쳐 Localizable.strings을 통해 올바른 언어 변환을 동적으로 검색하려고합니다. 제대로 작동하는지 확인하기 위해 두 가지 언어로 테스트합니다. 당연히 영어와 체코어요.다른 언어를 사용할 때 UILabel이 초기화되지 않는 이유는 무엇입니까? (iOS 현지화)
지금까지이 특별한 UILabel까지 아무런 문제가 없었습니다.
영어로 iPhone 및 앱을 사용하는 동안 전혀 문제가 없습니다. 그러나 iPhone 언어를 체코 어로 변경하고 앱을 테스트 할 때 내 UILabel 중 하나가 초기화되지 않습니다.
- (void)viewDidLoad
{
[super viewDidLoad];
NSLog(@"show: %@", self.segmentedControlTitle);
self.segmentedControlTitle.text = @"test";
// Other code
}
는 기본적으로 다른 언어로, 그냥 스토리 보드에 설정된 자리 표시 자 텍스트를 표시 :이 같은 텍스트를 강제 경우에도 문제가되지 않습니다. 지금까지 설정 한 다른 모든 제목은 실제 현지화 방법을 사용해도 완벽하게 작동합니다.
- (void)viewDidLoad
{
// The other code...
[self.segmentedControl setTitle:NSLocalizedString(@"VIEWALL_all", nil)
forSegmentAtIndex:0];
}
아이디어가 있으십니까? 원한다면 더 많은 코드를 게시 할 수 있지만 모든 것이 영어로 작동하는 것처럼 모든 것이 올바르게 설정되었다고 가정합니다. 그것은 내가 간과 한 간단한 것이어야합니다. 나는 Clean을 시도했다. 시뮬레이터와 아이폰에서 앱을 삭제하고 빌드를 다시 시도했다 ... 같은 이야기. 동료의 iPhone에서도 발생합니다.
미리 감사드립니다.
데이브
'초기화하지 않겠습니까?' 이 특별한 'UILabel'이 나타나지 않을 것이라고 말하는 것입니까? –
물론 죄송합니다. Null이므로 텍스트 속성을 설정할 수 없습니다. 내가 NSLog() 객체를 얻는지를 알기 위해 라벨을 시도하고 "null"을 얻는다. 그래서 초기화하지 않는다고 가정하고있다. 영어로 된 경우 NSLog()는 전체 객체를 출력에 표시합니다. – amonett
스토리 보드가 현지화되어 있습니까? –