2014-11-24 1 views

답변

0

구문을 번역하는 대신 단어를 번역하지 않아야하므로 입력하는 동안 문자열을 현지화하는 것이 어려울 수 있습니다. 그러나, 당신이 찾고있는 것이 NSLocalizedString이라고 믿습니다. 먼저 버튼을 누르면 텍스트 입력을 번역하는 앱을 만드는 것이 좋습니다.

업데이트 : : 로컬 라이 제이션/국제화의 스트레스를 완화하기 위해 코드의 사전 정의 된 텍스트를 다른 언어로 번역하는 NSLocalizedString에 대해 잘못되었습니다. 대신 Microsoft API를 사용하여 텍스트를 번역하고 ARC 호환이 가능하며 응용 프로그램과 통합 할 준비가 된 오픈 소스 프로젝트의 예가 있습니다.

그런 다음 변경 될 때 사용자 텍스트를 추적하고 완전한 문장을 찾아 사용자가 각 문장을 완료 할 때 번역 할 수 있습니다. UIKit은 KVO (Key-Value Observing) 호환이 보장되지 않으므로 UITextField의 텍스트 속성을 추적하지 못할 수도 있지만 View Controller에 <UITextFieldDelegate> 프로토콜을 구현하여 편집 속성을 추적하거나 또한 ... 텍스트 필드가 변경, 당신의 VC 인터페이스에서 라

을 추적 할 수 ReactiveCocoa처럼있는 viewDidLoad 또는 다른 적절한 방법에서

@property (strong, nonatomic) UITextField *myTextField; 
@property (strong, nonatomic) NSString *plainEnglishText; 

을 ... 라이브러리를 사용

[[self.myTextField.rac_textSignal filter:^BOOL(NSString *text) { 
    // check if a full sentence has been typed since last time, 
    // using regular expressions or another method, 
    // return YES or NO; the next block will run accordingly. 
}] subscribeNext:^(NSString *latestText) { 
    // some regular expression again to get last sentence _here_ 
    NSString *lastSentence = ...; 

    // add the last sentence to a string with the full english version 
    self.plainEnglishText = [self.plainEnglishText stringByAppendingString:lastSentence]; 

    // use NSLocalizedString on full plain text _here_ 
    NSString *localizedString = ...; 

    // update text field with new text. 
    self.myTextField.text = localizedString; 
}]; 

방금 ​​그 코드를 작성했지만 변경 사항을 추적하고 텍스트 필드를 업데이트하기로 결정한 경우 ReactiveCocoa 프레임 워크에 대한 지식이 있건 없건 그 발췌 문장은 텍스트 필드를 추적하는 방법에 관계없이 작업을 수행하십시오.

제안을 환영합니다. 베스트.

+0

안녕하세요, 제안에 대해 대단히 감사합니다.하지만 유니 코드에 대해 이야기하고 있었고 지역화 된 문자열에 대한 답장을 보내고 있습니다. 예 : 영어로 무언가를 쓰면 유니 코드를 사용하여 다른 언어로 바꿉니다. 현지화 된 문자열에 대해서는 문자열 파일을 만들어서 생각하고 처리합니다. 하지만 유니 코드를 사용하고 싶습니다. – user1495387

2

유니 코드는 사용자의 언어와 아무 관련이 없습니다. 영어를 중국어로 변환하려면 거대한 사전이 필요합니다. 10 년 간 두 언어의 구조를 연구하면 갈 준비가 된 것입니다. 런타임시 불완전한 문장에 대한 번역은 말도 안됩니다. 그런 식으로 언어 번역이 작동하지 않습니다.

관련 문제