2014-10-05 24 views
8

Bu sorunun birkaç kez sorulmuş olduğunu gördüm, ancak hiç kimse bir cevaba sahip değil gibi görünüyor. Özel bir klavyede otomatik düzeltme özelliği oluşturmaya çalışıyorum, ancak nasıl yapılacağı konusunda tamamen kaydım. Apple bazı belgeler veriyor, ancak çok ayrıntılı değil. UILexicon verileri ile ilgili bir şey olduğunu biliyorum, ancak bununla ne yapacağından ve kullanıcının yazdığı metin dizelerini düzeltmek için nasıl kullanılacağından emin değilim.iOS'ta otomatik düzeltme uygulamak için UILexicon kullanma 8 Klavye Uzantısı

Herhangi bir yardım büyük memnuniyetle karşılanacaktır.

Ben şimdiye kadar bulduk Ne:

let controller = UIInputViewController() 

    controller.requestSupplementaryLexiconWithCompletion({ 
     lexicon in 

     println(lexicon.description) 

    }) 

Ama bu bildiğim kadarıyla ele verdik gibidir. Buradan ne yapılacağından emin değilim.

+2

Gönderdiğim benzer bir soruyu tekrar sorduğunuz için teşekkür ederiz. – agf119105

cevap

9

Çok zor bir soru soruyorsunuz. Kısacası, iOS8'de otomatik düzeltme için yerleşik erişim yoktur; iOS'taki API'lara, sistemin kırmızı 'olası hata' alt çizgi efektini veya sistemi otomatik düzeltme davranışının (ör. yerinde öneri iletişim kutusu) diğer öğelerini göstermesine olanak tanıyan erişimi yoktur. iOS 7 veya önerileri çubuğu görünür durumda değilse veya mavi arka planını 'düzeltir' (iOS 8'de).

şeyler yapamaz:

dotted red line

yerinde hata göstergesi

in-place suggestion

yerinde otomatik düzeltme iletişim

will correct

öneri çubuğu otomatik düzeltme göstergesi

ne can kendi metin işleme ve analiz ve kendi kullanıcı arayüzü deyimler de dahil olmak sıfırdan kendi otomatik düzeltme motoru yazmak yapmak. Bu, klavyenizin sınırları dışında çizim yapamayacağınız sınırlama ile yapılmalıdır ve ekranda başka bir şey değiştiremezsiniz. minuum ve swiftkey (sorumluluk reddi: minuum üzerinde çalışırım) gibi bir dizi üçüncü taraf klavyesi bunu yapar; ancak bu, rastlantısal olmayan bir iştir. Bununla oynamaktan hoşlanıyorsanız, otomatik düzeltme, yazım denetiminden ayrı bir sorun olsa da, başlamak için iyi bir yer, UITextChecker sınıfında oluşturulabilir.

UILexicon yalnızca bir şeyleri zaten uyguladıktan sonra kullanışlıdır; Gerçekten size sunduğu her şey, kullandığınız her hangi bir kelimeyi tamamlamak için kullanabileceğiniz ve kullanıcılarınızın sistem ayarlarına ekleyebileceği herhangi bir metin kısayolunu uygulamak için kullanabileceğiniz sözcüklerin bir listesidir. Kendi başına bir otomatik düzeltme sistemi kurmak için yeterli değildir.

Zeyilname: How to Write a Spelling Corrector ilginç bulabileceği Peter Norvig tarafından harika bir küçük deneme/öğretici olduğunu ve Olmadığınıotomatik düzeltme yazmaya çalışıyorum olsanız bile öneriyoruz söyledi.

+2

Bu soruyu başlangıçta sorduğumda, cevap için her gün tekrar kontrol ettim ve sonunda pes ettim. Klavyemize bakmadan yazarak çok ilkel bir otomatik düzeltme oluşturdum ve ardından tüm yanlış yazılmış sözcükleri, bir Plist üzerinde bir değer olarak doğru kelime ile bir anahtar olarak ekledim. Sonra yazılan her kelime, bir çiftin olup olmadığını kontrol eder. Hiç verimli değil ve yeni kelimeler eklemek sonsuza dek sürer, ama işe yarıyor! Eklediğiniz makale, sonsuza kadar aradığım şey olan EXACTLY. Cevabınız için çok teşekkür ederim. Bu arada baktığımda klavyem Dvorak düzenidir! – SomeGuy

İlgili konular