2013-10-14 2 views
0

샘플 응용 프로그램에서 영어 및 스페인어 언어로 현지화를 사용하고 있습니다. 영어와 스페인어 모두에 대해 Localizable.strings 클래스를 추가했습니다. 이미지, XIB 및 레이블 텍스트를 현지화하는 것이 가능하다는 것을 알고 있습니다. 하지만 XIB를 현지화하지 않고도 iPhone 앱을 현지화하는 것이 가능하다는 것을 알고 싶습니다. 심지어 XIB를 현지화해야 할 필요성이 있습니다. 또는 Interface Builder에서 버튼 제목을 NSLocalizedString (@ "TITLE", nil)으로 지정할 수 있습니까? 나는 이것이 이것을하기위한 적절한 방법이 아님을 안다. 추가 진행을 제안 해주세요.XIB 현지화를 사용하지 않고 iPhone 앱을 현지화 하시겠습니까?

감사합니다.

+0

감사를 NSLocalizedString를 사용할 수 있습니다. 그러나 UIButton 텍스트는 UIButton 제목 텍스트가 아닌 국가 언어에 따라 변경됩니다. –

+0

죄송합니다, 실제로 실수를했습니다. 이제는 잘 작동합니다. 고마워요. –

답변

1

예는 응용 프로그램 지역화 할 수 있습니다 (스페인어) Localizable.strings에서

에 대한 XIB를 현지화하지 않아도됩니다.

당신은 모든 라벨, 버튼, 텍스트 뷰에 대한 출구를 만들어야합니다는 ... 그런 다음 viewDidLoad 설정 올바른 지역화 된 문자열에서 :

-(void) viewDidLoad { 
    [super viewDidLoad]; 

    self.nameLabel.text = NSLocalizedString(@"name:", @"name label"); 
    [self.saveButton setTitle:NSLocalizedString(@"save", @"Save button title.") forState:UIControlStateNormal]; 
} 

이 변화하기 때문에, 내가 그것을 할 방법입니다 모든 현지화 된 XIB는 오래 걸리고 자동 레이아웃을 사용하면 모든 것이 적합하다는 것을 확인할 수 있습니다.

0

문자열을 현지화하는 데 XIB가 필요하지 않습니다. 버튼 당신이 Localizable.strings에서 정의한 다음

[button setTitle:NSLocalizedString(@"Title","description") forState:UIControlStateNormal]; 

처럼 사용이 보여 어떤 파일을 어떤 언어

"Title" = "<Title in spanish>"; 
1

XIB 파일을 지역화하는 이유는 다른 언어의 텍스트가 다른 길이이므로 UI의보기 크기를 변경해야하기 때문입니다. XIB 또는 코드 (예 : sizeToFit 및 위치/자동 레이아웃 제약 조건)에서 처리 할 수 ​​있습니다.

기술적으로 당신은 ... 당신이 원한다면 이미지 이름을 지역화하기 위해 내가 UILabel의 및있는 UIButton에 그것을 시도 all..But에

+0

@WainThanks와 최선의 제안을위한 하나의 upvote. –

관련 문제