5

Androidでのテキストの編集に関して問題があります。

Usernameという名前のフィールドがあります:

誰かが「GauravArora」のようにスペースを入れたユーザー名を書くときはいつでもそれが欲しいです。次に、ログインボタンを押すとトーストまたはエラーが発生するはずです。

私はこのようにしました-私は単にテキストウォッチャーの助けを借りてスペースバーの効果を止めました-

public static TextWatcher getNameTextWatcher(final TextView agrTextView) {
        TextWatcher mTextWatcherName = new TextWatcher() {
            public void onTextChanged(CharSequence arg0, int arg1, int arg2,
                    int arg3) {
            }

            public void beforeTextChanged(CharSequence arg0, int arg1,
                    int arg2, int arg3) {
            }

            public void afterTextChanged(Editable arg0) {

                String result = agrTextView.getText().toString().replaceAll(" ", "");
                if (!agrTextView.getText().toString().equals(result)) {
                    agrTextView.setText(result);
                }

}
}

しかし、これは私の目的を解決していません。スペースのあるユーザー名を使用する場合は常にスペースを受け入れる必要がありますが、ログインボタンを押すとトーストが発生するはずです。

ありがとう

4

6 に答える 6

18

編集テキストに空白が含まれているかどうかを確認してください。

onClick()Buttonのイベントでは、次のコードを使用します。

 if (agrTextView.getText().toString().contains(" ")) {
     agrTextView.setError("No Spaces Allowed");
     Toast.makeText(MyActivity.this, "No Spaces Allowed", 5000).show();
 }
于 2013-01-14T09:27:34.913 に答える
8

これを試して..

     btnLogin.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            String result = agrTextView.getText().toString();
             if(result.contains ("\\s"))
               Toast.makeText(getApplicationContext(), "Space ", Toast.LENGTH_LONG).show();
        }
    });
于 2013-01-14T09:13:09.523 に答える
4

これを行うだけです:

TextView.getText().toString().contains(" ");
于 2014-03-26T12:48:03.313 に答える
3
 String question = txtNote.getText().toString();
 if(question.trim().length() > 0){
    Log.i("LOG", "Has value");
 }else{
    Log.i("LOG", "don't has value");
   }
于 2015-10-08T07:26:40.423 に答える