2011-09-16 20 views
5

私のアプリケーションでは、バーコードスキャナとソフトキーボードの2つの入力ソースを同時にアクティブにする必要があります。私は青い歯のスキャナをペアにすると、物理的なキーボードとして扱われています。したがって、このデバイスが接続されているときは、ソフトキーボードが表示されていません(ソフトキーボードは無効になっています)。物理キーボードとソフトキーボードの両方を同時にアクティブにすることはできますか?

物理キーボードとソフトキーボードの両方を同時にアクティブにすることはできますか? そうでなければ、問題を解決するための最良の方法は何ですか?キープレスイベントをシンクするカスタムビューを実装する必要がありますか?これを行う市場にキーボードアプリケーションがありますか?

物理的にキーボードをオン/オフにする方法はありますか。これは、(私はここで、この設定のスクリーンショットを発見したトグルボタン「を使用する物理的なキーボード」設定です:

enter image description here

答えて

1

同時にアクティブに物理的なキーボードとソフトキーボードの両方を持つことは不可能であることがあります。 InputMethodService機能onEvaluateInputViewShownによって強制。あなたはドキュメントhereを確認することができます。

/** 
* Override this to control when the soft input area should be shown to 
* the user. The default implementation only shows the input view when 
* there is no hard keyboard or the keyboard is hidden. If you change what 
* this returns, you will need to call {@link #updateInputViewShown()} 
* yourself whenever the returned value may have changed to have it 
* re-evaluated and applied. 
*/ 
public boolean onEvaluateInputViewShown() { 

だから、同時にアクティブにする物理的およびsoftkeyboardの両方を持ってすることはできませんonEvaluateInputViewShownあなたがオーバライドすることができますここで、あなたがあなた自身のIMEを実施していない限り、 。

最後の質問についてはわかりませんが、プログラムでハードキーボードを隠す方法はないと思います。確認する必要がある解決策はありませんが、this question

関連する問題