2012-04-16 50 views
2

我有一個EditText上總是包含一個整數......但有時也包含text..how做檢查我的字符串包含在的EditText文本字段? 在此先感謝。的Android檢查的EditText

+0

幾乎沒有,我只能檢查EditText上是空的或不符合本:mDisplaySting = mDisplay.getText()的toString()。 \t \t \t \t \t \t \t \t \t \t如果(mDisplayString.length()!= 0) – Tony 2012-04-16 00:31:11

+0

你想它限制它的數字_only_ \t? – Sam 2012-04-16 00:40:59

+0

沒有..過濾已經做了同樣的EditText.I解決與Raunak的答案。感謝您的答案:d – Tony 2012-04-16 00:57:40

回答

8

我會以下列方式解決這個問題:

String mEditText = mDisplay.getText().toString(); 
if(mEditText.matches("[0-9]+")) { 
    // mEditText only contains numbers 
} else { 
    // mEditText contains number + text, or text only. 
} 
+0

完美!很感謝! – Tony 2012-04-16 00:55:06

0

退房java.lang.Character.isDigit()。您可以通過遍歷其字符並檢查它們是否爲數字來檢查String是否爲數字。

Reference

+0

感謝回答 – Tony 2012-04-16 00:57:59

2

我認爲,你可以檢查你的文字只包含數字和/或字母。 如果你建立一個實用的方法是這樣的:

public static boolean isNumeric(String s){ 
    if(TextUtils.isEmpty(s)){ 
    return false; 
    } 
    Pattern p = Pattern.compile("[-+]?[0-9]*"); 
    Matcher m = p.matcher(s); 
    return m.matches(); 
} 

...那麼你可以使用它輕鬆地檢查是否從你的TextView檢索您的文本包含整數或不:)

String text = textview.getText().toString(); 
    if(TextUtils.isEmpty()){ 
    // We have got an empty string 
    } else if(isNumeric(text){ 
    // Do something 
    }else{ 
    // It's not numeric do something else 
    } 
+0

感謝答案 – Tony 2012-04-16 00:58:57