0

ボタンからのonclickが起動される前に、EditTextで値をチェックインするためのベストプラクティスは何ですか。値がない状態で起動すると、エラーが発生してクラッシュします。if(edittext!= null){then my onlcick code}を実行しようとしましたが、edittextに値がないのにクリックすると、クラッシュしました。

4

2 に答える 2

3

if (edittext != null) {...}動作しない理由は、このステートメントが実際のEditTextオブジェクトの条件をチェックし、その内容をチェックしないためです。

内容を確認したい場合はedittext.getText()、検証ロジックを呼び出して適用するだけです。テキストが空かTextUtilsどうかを確認するために使用できる便利な方法があります( ) :。プレーンJava文字列にも使用できます。null""TextUtils.isEmpty(edittext.getText())

TextUtils.isEmpty(edittext.getText().toString().trim())

これは、テストの前に、最初に先頭と末尾のスペースをトリミングします。要件に応じて、正規表現を使用してこれを簡単に拡張し、空白文字などを取り除くことができます。一般的なヒントとして、「androidフォーム検証」を検索すると、さらに多くのポインターが見つかると確信しています。

于 2012-06-18T03:30:21.623 に答える
2

私はこれを使用しました:

String content = editText.getText().toString().trim();
if (content.length() == 0) {
    // do something
}

これにより、空白のみの文字列も防止されます。

于 2012-06-18T03:27:36.670 に答える