2
我需要讓用戶在格式hh:mm
輸入時間,但由於issue 28132的我不能使用解決方法的類型時編輯顯示鍵盤沒有冒號
<EditText ... android:inputType="time">
我想我會接受任何分隔符,例如類似hh mm
或的東西,但是這樣的字符也不能被鍵入(邏輯,因爲它們不屬於時間;冒號確實但鍵盤上丟失)。將類型更改爲text
可行,但文本鍵盤不適合打字。
因此,我想在編輯開始之前刪除冒號,並在結束時將冒號放回去,但我不知道如何識別這些事件。 addTextChangedListener
允許跟蹤所有細粒度的更改,但我認爲在編輯時期間更改文本並不合理,我寧願需要像editStarts
和editEnds
這樣的事件,這與顯示和隱藏鍵盤相對應。 他們是這樣的事件嗎?
對於這個錯誤你會推薦什麼解決方法?
[這裏](http://developer.android。 com/reference/android/text/method/TimeKeyListener.html)寫的是*這個類只關注硬件鍵盤,*但我的問題是彈出錯誤的軟件鍵盤。所以恐怕它不適用。我也發現[InputMethod](http://developer.android.com/reference/android/view/inputmethod/InputMethod.html),但它看起來非常可怕。 – maaartinus
它被寫入它沒有義務,但通常軟件iims使用它,你嘗試過嗎? – nandeesh
我目前只能在Eclipse/AVD中試用它,它在那裏很好地工作。我添加了一個「過濾器」方法,以防有人在意。 – maaartinus