2016-07-13 4 views
-2

나는 EditTextButton을 가지고 있습니다.EditText에 값이 있는지 어떻게 확인합니까?

Button을 클릭하면 EditText이 비어 있었으면합니다. 나는 "숫자를 입력하십시오"와 같은 축배로 메시지를 보여주고 싶습니다. 버튼의 OnClickListener를에서

EditText editText = (EditText) view.findViewById(EditTextID); 
    if(editText.getText().toString().length()==0) { 
    Toast alert = Toast.makeText(context, toast_message, Toast.LENGTH_SHORT); 
    alert.show(); 
    } 
+1

코드 예를 볼 수 있습니까? – christopher

+2

중복 된 질문 : http://stackoverflow.com/questions/6290531/check-if-edittext-is-empty – Nico

답변

1

사용이

int length = editText.getText().length(); 
if(length == 0) 
{ 
    Toast.makeText(getActivity(), "Please enter a number",Toast.LENGTH_LONG).show(); 
} 
0

() : 당신의 버튼의 클릭에

+0

매우 도움 주셔서 감사합니다. –

+0

괜찮습니다. 정확하거나 유용하다고 판단되면 대답을 수락하십시오. –

2

당신은 같은 것을 수행 할 수 있습니다

boolean hasValue = editText.getText().length() > 0; 

또는

boolean hasValue = !editText.getText().toString().isEmpty(); 

하거나 공백 만 포함하지 않는 확인하기 :이 가장 깨끗한 방법이다라고

boolean hasValue = !editText.getText().toString().trim().isEmpty(); 
1

이 작업을 수행하는 가장 깨끗한 방법은 TextUtils.isEmpty(editText.getText()) 이유입니다 이유는

  • CharSequenceString 사이에 무의미한 변환을 피할 수 있습니다. 객체를 생성합니다. editText.getText()Editable을 반환하면 toString()을 호출하면 좋지 않은 추가 개체가 생성됩니다. 이 메서드는 결코 내 경험에 null을 반환합니다.
  • 당신은 nulllength을 확인합니다. TextUtils.isEmpty() 코드를 보면 기본적으로 CharSequencenull이고 길이가 0인지 확인합니다.
  • 코드 중복을 피하고 동일한 방법을 String 또는 CharSequence 개체와 함께 사용할 수 있으며 EditableCharSequence의 구현입니다.
  • Android 프레임 워크의 일부로 제공됩니다.

트리밍 된 문자열의 길이를 확인하려는 경우. 그런 다음 사용 : 당신이 원하는 경우

TextUtils.isEmpty(editText.getText()) 
      && TextUtils.getTrimmedLength(editText.getText()) == 0 

, 당신은이 작업을 수행하는 자신의 유틸리티 메소드를 만들 수 있도록 당신이 반복적으로 코드에서 이러한 긴 조건을 추가 할 필요가 없습니다.

EditTextOnFocusChangeListener을 첨부하여 값의 변경 사항을 확인하거나 요구 사항의 중요도에 따라 TextWatcher 또는 둘 다를 확인합니다. 입력란에 초점을 맞추어 잃어버린 경우 OnFocusChangeListener으로 유효성 검사를하고 입력란에 내용이 입력되어 삭제되었거나 내용이 너무 짧으면 TextWatcher을 사용하여 알립니다.

0

당신 아마 이미 답을 찾았지만, 여기에 답을 찾으려 여기 온 사람을 위해 그 수행 방법은 다음과 같습니다

당신은 당신의 버튼 기능 클릭에 먼저 String 객체 또는 교차점 개체를 확인해야합니다 당신은 또한 Toast을 사용할 수 있습니다

@Override 
    public void onClick(View view) { 
    String numberValue; 
        numberValue = yourEditText.getText().toString(); 
        if (emailEtValue.matches("")){ 
         Snackbar sbEmptyValue = Snackbar.make(view, "You must enter an Integer Value", Snackbar.LENGTH_LONG); 
         sbEmptyValue.show(); 
        } else { 
         //DO THE THING YOU WANT 
        } 
} 

하지만 쿨러에 비해 Toast 때문에 플로팅 작업을 선호하는이 물품.

관련 문제