2010-12-17 15 views
2

私は1つのアプリケーションのコードを書いていました。私は編集テキストのためにIME_ACTION_DONEを書いていました。他のデバイスはこのアクションをサポートしていますが、HTCが望んでいるのは、この「完了」ソフトキーボードbutton.Howを取得していません。私のアプリケーションでHTCで使用するために多くの変更を加えることなくEditTextのこの完了ボタン機能の代替を私に教えてください。HTC欲望のアクション完了ボタンの代わりに?

答えて

5

あなたの問題はHTCだけではありません。アクションボタンをサポートするIME実装はありません。したがって、同じ効果を持つソフトキーボードがいくつあることも確信しています。

HTCで使用するアプリケーションに変更を加えずにEditTextのボタン機能を代替することができます。

アクティビティでButtonウィジェットを使用してください。または、オプションメニューの選択肢を使用します。とにかく、ハードウェアキーボードにはアクションボタンがないので、それにも必要なUIが必要です。

1

他のキーボードを聴きません!あなたもこれを行うことができます。

yourEditText.setOnEditorActionListener(this); 

@Override 
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { 
    // Hides the keyboard on HTC devices that do not comply with imeOptions="actionDone" 
    // You could wrap this in a device check if you just want to single out HTC 
    ((InputMethodManager) v.getContext().getSystemService(Context.INPUT_METHOD_SERVICE)).toggleSoftInput(0, 0); 
    return true; 
} 
+0

私の 'Motorola DROID RAZR HD'は、終了ボタンを押したときに数字キーパッドを隠していません。このコードはすべてのデバイスで機能しますか?はいの場合、HTCのためだけに折り返すのはなぜですか? –

関連する問題