2010-10-18 56 views
3

我想爲EditText允許輸入0-9,「,」或「 - 」,但找不到答案。Android:展開EditText的inputType?

我知道使用「|」作爲一個分隔符是可能的:

android:inputType="number|text" 

但如何我可以存檔這樣的事情(太糟糕了它不工作):

android:inputType="number|,|-" 

有誰知道?

問候,

科迪


除了下面的評論:

私有類MyKeylistener擴展 NumberKeyListener {

public int getInputType() { 
     return InputType.TYPE_CLASS_NUMBER; 
    } 
    @Override 
    protected char[] getAcceptedChars() { 
     return new char[] {'0','1','2','3','4','5','6','7','8','9',',','-'}; 
    } 

}

回答

2

我不認爲有辦法提供這樣的任意過濾器。您必須使用提供的filter types

如果找不到符合要求的那些類型的組合,則可能需要使用EditText上的TextWatcherInputFilter進行篩選。

+0

感謝您的快速響應。你把這個想法放在腦海裏去尋找一個KeyListener。以下是我發現的內容,可能對某人有用: – cody 2010-10-18 22:15:48

+0

請注意(我認爲評論的結尾已經丟失,所以不確定你說的是什麼,但是...)OnKeyListener界面只會通知你輸入的文本通過物理鍵盤,而不是屏幕鍵盤(ime)。爲了聽取來自兩者的文本更改,您需要使用我提到的一種方法。 – 2010-10-18 22:19:35

+0

好的,你提到的是 - 在模擬器中,我無法在該字段中輸入其他字符。我不知道如何在評論中發佈代碼,我在上面發佈了它。最好的問候,科迪 – cody 2010-10-18 22:26:40

相關問題