2012-04-17 32 views
1

私のアプリでエラーが報告されたユーザーがいます。レイアウトにいくつかのEditTextフィールドがあります。私はユーザーが符号付き10進数を入力できるようにしたい。しかし、これらのフィールドにはカスタムTextWatcherが添付されているため、入力を処理して正しいことを確認しているため、レイアウトにnumber|numberSigned|numberDecimalと宣言していません。マイナスキーをトグルとして機能させたいので、これを行います。Android Virtual Keyboardのボタンが不適切に無効になっている(Kindle Fire)

たとえば、フィールドに「300」が含まれているとします。ユーザーがマイナスをタップすると、私のカスタムTextWatcherがそれをインターセプトし、 "300-"の代わりに "-300"に変換します。マイナスをもう一度タップすると、既存のマイナスが削除されて「300」に変更されます。

これはほぼすべての人にとってうまくいきますが、Kindle Fireではうまく動作しません。仮想キーボードの小数点とマイナスキーは無効になっているため、これらのキーをタップしてカスタムテキストウォッチャーに処理させることさえできません。

フィールドをnumber|numberSigned|numberDecimalと宣言した場合、カーソルが最も左の位置(つまり、300の3より前)にない限り、ユーザーはマイナスキーをタップできません。

Kindle Fireに、小数点とマイナスキーをアクティブにする必要があることを確認するにはどうすればよいですか?同時に、カスタムのTextWatcherに到達する前にユーザーの入力を制限しないでください... wayすべての他のAndroidデバイスは私のために働いていますか? @zaplから:)

+0

EditTextを "number"に制限せずにテンキーパッドを押す方法がありました。 Fireが「300-」を入力できるようになるので、それはあなたのために働くかもしれません。私はちょうどどのように覚えていない:O) – zapl

+0

'theEditText.setRawInputType(Configuration.KEYBOARD_12KEY)' 5月が役立ちます。無効な ' - 'は本当に奇妙に聞こえる。 – zapl

+0

私は試してみましたが、助けになりませんでした。 : –

答えて

0

答え:

theEditText.setRawInputType(Configuration.KEYBOARD_12KEY) 

が働いていました!彼はこの答えのための適切な信用を得ることができるように、彼とupvote彼の他の良い答えを見つけるに行く。 ;)

関連する問題