2

常に整数を含むEditTextがありますが、テキストも含まれる場合があります。文字列にEditTextのテキストフィールドが含まれているかどうかを確認するにはどうすればよいですか。前もって感謝します。

4

4 に答える 4

8

私は次の方法で問題に取り組みます:

String mEditText = mDisplay.getText().toString();
if(mEditText.matches("[0-9]+")) {
    // mEditText only contains numbers
} else {
    // mEditText contains number + text, or text only. 
}
于 2012-04-16T00:46:43.040 に答える
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
  }
于 2012-04-16T00:48:15.287 に答える
0

チェックアウトjava.lang.Character.isDigit()。aStringが数字であるかどうかは、その文字を繰り返し処理して数字であるかどうかを確認することで確認できます。

参照

于 2012-04-16T00:33:53.253 に答える
0

EditTextにhttp://developer.android.com/reference/android/text/TextWatcher.htmlを登録して、フィールドが変更されたときにこれらの操作を実行することもできます。これにより、無効な文字が入力されたときに拒否したり、無効なときにテキストを赤くしたりするなどの便利な操作を実行できます。

于 2012-04-16T01:30:20.350 に答える