全くとるに足らない日記

気が向いた時に書いた生活の記録を垂れ流すブログ

[swift] iOS13の日本語環境で異体字セレクタが上手く機能していない件について

2019-10-28 21:26:22 | アプリ開発
拙作のIOSアプリ「もじこ」の事であるが、iOS13環境において一部の文字がおかしい事に気付き、ここ数日調査研究をしていた。
もじこは約六万文字を収録しているアプリであるが、例えば、「辻」の文字であるが、これには二点しんにょうと一点しんにょうの二種類の文字があるが、両方とも二点しんにょうに表示されていた。
いろいろ調べた結果、Unicode文字管理における「異体字セレクタ」が機能しておらず、異体字においてもその元字が表示されているという事に行き着いた。
更に開発環境のシミュレーターで設定変更を繰り返し検証した結果、iOS13でも英語設定環境では異体字セレクタが正常に機能している事にも気付いた。
本当はiOS側の修正を待ちたいところではあるが、そうも言ってはいられないので下記の2行のコードを付け足した。

//強制的にUSモードにする(iOS13対応)
UserDefaults.standard.set(["us"], forKey: "AppleLanguages")
UserDefaults.standard.synchronize()

これは何かと言うと、アプリ中の文字設定を強制的に英語設定にしたのである。なお、この変更はもじこのVer2.5から適用しました。既にアプリストアからダウンロード可能です。
これでとりあえずは問題回避となったが、デフォルトの文字入力までもが英語モードになるので文字入力の際にいちいち日本語に切り替える操作が必要となる副作用がある。
iOS13が抱える闇はまだまだ深いようである。


最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。