質問

私は言語学習アプリを書いています。現在はドイツ語<->ロシア語です。

いくつかあります EditTexts ユーザーがいずれかの言語でテキストを入力することになっている場合。これらの言語は異なるアルファベットを使用しているため、アプリは実装することにより独自のソフトキーボードを使用します InputMethodService ラテン語とキリル語の両方のキーボードレイアウトを提供します。それぞれで知られています EditText どの言語が期待されるかフィールド。

私が望むのは、それ、例えば、 EditText ロシア語が焦点を合わせていることを期待しているフィールドでは、キリルのキーボードレイアウトを表示する必要があります。選択すると、 EditText IMEに何らかの定数を渡す必要があります。IMEは、後者がラテン語モードで表示するかキリル語モードで表示するかを決定するために使用できます。

理想的には、単にカスタムを指定するだけです InputType のために EditText しかし、それは不可能だと思われますね。ここでの正しいアプローチは何ですか?

役に立ちましたか?

解決

あなたのアイデアは悪く聞こえません。 IMEのコードチェック InputType スイッチブロックとデフォルトのキーボードレイアウトが表示されます InputType 一致しませんでした。

ロジックを提供することもできます onCreate() あなたの方法 Activity どの入力メソッドがアクティブであるかを確認するには、その情報でどの入力を選択しますか inputType 君の EditText すべきだった。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top