UILexiconで普通の辞書データを取得したい。
UILexiconのクラスリファレンスを見ると、3種類のデータ(アドレス帳、ユーザー定義辞書、普通の辞書)を取得できると書いてあります。
しかし、アドレス帳とユーザー定義辞書のデータは取得できますが、一般の辞書データが取得できません。
こちらのページなどでも、同じ状態が報告されています。
普通のiPhone辞書データベースから、漢字候補などを取得するには、何か特別な設定があるのでしょうか。どなたかお教えいただければ幸いです。
ちなみに、私が書いているコードはこのような感じです。アドレス帳とユーザー辞書からのデータのみが返ってきます。
self.requestSupplementaryLexiconWithCompletion({
lexicon in
// UILexicon から取得したデータを表示
for item in lexicon.entries {
// 検索結果
if(hira == item.userInput ){
// 検索結果とマッチしたユーザー入力値
if(countHere < 2){//ユーザー辞書からの取得数制限
NSOperationQueue.mainQueue().addOperationWithBlock({
self.candidates.append(item.documentText)
self.candidateLabels[countHere].text = item.documentText
countHere += 1
})
}
}
}
})
よろしくお願い致します。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
追記:英語版のstack overflowの回答で、役に立つかもしれない情報がありましたので、リンクを残します。役に立つかどうか、まだわかりません。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
追記2:英語版で、さらに情報を探してみました。こちらのリンクが役に立ちそうでした。まだ自分では実装してみていません。UITextCheckerクラスの使用について。日本語が対応しているかどうか。。
追記3:日本語がUITextCheckerクラスに対応しているか調べました。
2016年9月23日現在、対応していません。対応言語は以下でした。
[en_CA, pt_BR, it_IT, ko_KR, nb_NO, de_DE, en_GB, sv_SE, en_AU, en_SG, es_MX, pt_PT, en_IN, fr_FR, es_ES, nl_NL, tr_TR, fi_FI, pl_PL, ru_RU, en_US, da_DK]