2014-10-05 5 views
8

이 질문에 몇 번 질문했지만 아무도 답변을 얻지 못하는 것 같습니다. 사용자 지정 키보드에서 자동 고침 기능을 만들려고 시도하고 있지만 어떻게 그렇게 할 수 있는지 완전히 알 수 없습니다. Apple은 몇 가지 문서를 제공하지만 매우 자세하지는 않습니다. 나는 그것이 UILexicon 데이터와 관련이 있다는 것을 알고 있지만, 어떻게해야 할 지 모르겠다. 그리고 사용자가 타이핑하는 텍스트의 문자열을 수정하기 위해 그것을 어떻게 사용하는지 모른다.UILexicon을 사용하여 iOS 8에서 자동 고침 구현하기 키보드 확장

도움을 주시면 감사하겠습니다.

내가 지금까지 발견 무엇 :

let controller = UIInputViewController() 

    controller.requestSupplementaryLexiconWithCompletion({ 
     lexicon in 

     println(lexicon.description) 

    }) 

을하지만 이것은 지금까지 내가받은 것 같습니다. 여기에서 무엇을해야할지 모르겠습니다.

+2

내가 게시 한 비슷한 질문을 다시 해 주셔서 감사합니다. 누군가가 대답하기를 바랍니다. – agf119105

답변

9

매우 어려운 질문을하고 있습니다. 즉, iOS8에서 자동 고침에 대한 액세스가 내장되어 있지 않습니다. 시스템이 빨간색 '가능한 오류'밑줄 효과를 표시하거나 또는 시스템의 다른 측면 (예 : 내부 제안 대화 상자())과 같은 작업을 수행 할 수 있도록하는 IOS에 대한 API에 액세스 할 수 없습니다. iOS 7, 또는 제안 표시 줄이 보이지 않는 경우) 또는 파란색 배경을 (iOS 8에서) 수정합니다.

일 당신이 할 수 없습니다

dotted red line

현재 위치에서 오류 표시

in-place suggestion

현재 위치에서 자동 고침 대화 상자를

will correct

제안 바 자동 고침 표시

무엇 자신의 텍스트 처리 및 분석하고 자신의 사용자 인터페이스 숙어를 모두 포함하여, 처음부터 자신의 자동 고침 엔진을 작성하면된다. 이것은 키보드 경계를 벗어날 수 없다는 한계로 끝나야하며 화면의 다른 부분은 수정할 수 없습니다. minuumswiftkey과 같은 여러 타사 키보드가 있습니다 (면책 조항 : 나는 작습니다)하지만 우발적 인 작업은 아닙니다. 이 문제를 해결하는 데 관심이 있으시면 UITextChecker 클래스에서 시작하는 것이 좋지만 자동 수정은 궁극적으로 맞춤법 검사와는 다른 문제입니다.

UILexicon은 이미 구현 한 후에 만 ​​유용합니다. 정말 제공하는 모든 것은 사용중인 사전을 보완하고 사용자가 시스템 설정에 추가했을 수있는 텍스트 바로 가기를 구현하는 데 사용할 수있는 단어 목록입니다. 자동 보정 시스템을 구축하기에 충분하지 않습니다.

부록 : How to Write a Spelling Corrector 당신이 흥미 수도 피터 노르 빅의 뛰어난 작은 에세이/튜토리얼, 그리고 난 당신이하지는 자동 수정 쓰기를 시도하는 경우에도 추천 할 것입니다 그.

+2

처음에이 질문을했을 때, 나는 매일 답을 찾아 보았고 결국 포기했다. 나는 그것을 보지 않고 내 키보드로 타이핑하여 매우 원시적 인 autocorrect를 만든 다음 철자가 틀린 모든 단어를 Plist의 키로 추가하여 값이 정확한 단어로 만듭니다. 각 단어가 입력되면 쌍이 있는지 확인합니다. 전혀 효과가 없으며 새로운 단어를 추가하는 데 영원히 걸리지 만 작동합니다! 당신이 추가 한 기사는 내가 지금까지 영원히 찾고 있었던 것입니다. 당신의 대답에 너무 감사드립니다. 내 키보드는 Dvorak 레이아웃입니다. – SomeGuy