[RESOLVIDO] Tratar EditText vazios

7 respostas
programaçãoandroid
Matheus_Dias3

A minha dúvida é a seguinte, eu quero tratar EditText onde o usuário não pode deixar nenhum dos campos vazios ( no caso da minha aplicação são 3 EditText). Já tentei vários caminhos e minha ultima tentativa tentei usar StringUtils e não deu certo. Help ! !

7 Respostas

Leonardo_Dias

Tente fazer dessa forma:

if(et.getText().toString().isEmpty()){
    Toast.makeText(this, "O Texto está vazio", Toast.LENGTH_SHORT).show();
}
Matheus_Dias3

Já tentei, porem na linha : Toast.makeText fica sublinhada

Leonardo_Dias

Qual o motivo de ficar sublinhada?

Tenta colocar o nome da atividade ali no Toast, exemplo:

if(et.getText().toString().isEmpty()){
    Toast.makeText(SuaAtividade.this, "O Texto está vazio", Toast.LENGTH_SHORT).show();
}
Matheus_Dias3

Não tá dando certo cara! Mais valeu. Vou pesquisar mais um pouco

Leonardo_Dias

Como assim não está dando certo??? Impossível

Posta seu código inteiro então, eu nem sei se vc está usando Activity ou Fragment, não tem como adivinhar.

Mas se vc prefere “pesquisar”, tudo bem!

Matheus_Dias3
public class MainActivity extends Activity {
    double total = 0, new_value = 0;
        private static final String EditText = null;
        EditText ednumero5, ednumero2,ednumero3;
  
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        ednumero5 = (EditText)findViewById(R.id.ednumero5);
        ednumero2 = (EditText)findViewById(R.id.ednumero2);
        ednumero3 = (EditText)findViewById(R.id.ednumero3);
       

        Button btsomar = (Button)findViewById(R.id.btsomar);
        btsomar.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View arg0) {
            double num5 = Double.parseDouble(ednumero5.getText().toString());
            double num2 = Double.parseDouble(ednumero2.getText().toString());
            double num3 = Double.parseDouble(ednumero3.getText().toString());
           
            
            
                RadioGroup rg = (RadioGroup)
                findViewById(R.id.rgopcoes);
                int op = rg.getCheckedRadioButtonId();
                switch (rg.getCheckedRadioButtonId()) {
                 case R.id.rb1:
                 Toast.makeText(MainActivity.this, "Densidade Alta !", Toast.LENGTH_SHORT).show();                        
                 break;
                 case R.id.rb2:
                 Toast.makeText(MainActivity.this, "Densidade Baixa !", Toast.LENGTH_SHORT).show();
                 break;
                 default:
                 Toast.makeText(MainActivity.this, "Selecione um tipo de densidade", Toast.LENGTH_SHORT).show();                            
                }
                
                if(op==R.id.rb1){
                new_value = (num2*num5*0.952);
                total = num3/new_value;
                
                double valorfinal = total;
                BigDecimal valorExato = new BigDecimal(total).setScale(6, RoundingMode.HALF_DOWN);
                String valorStr =  new BigDecimal (total).toPlainString();
                
                AlertDialog.Builder mensagem = new
                AlertDialog.Builder(MainActivity.this);
                mensagem.setTitle("Resultado da Espessura");
                mensagem.setMessage("Espessura = "+valorExato);
                mensagem.setNeutralButton("OK", null);
                mensagem.show();
                }
                
                else if (op==R.id.rb2){
                new_value = (num2*num5*0.922);
                total = num3/new_value;
                
                double valorfinal = total;
                BigDecimal valorExato = new BigDecimal(total).setScale(6, RoundingMode.HALF_DOWN);
                String valorStr =  new BigDecimal (total).toPlainString();
                
                AlertDialog.Builder mensagem = new
                AlertDialog.Builder(MainActivity.this);
                mensagem.setTitle("Resultado da Espessura");
                mensagem.setMessage("Espessura = "+valorExato);
                mensagem.setNeutralButton("OK", null);
                mensagem.show();
                }
                
                else{
                    AlertDialog.Builder aviso = new
                    AlertDialog.Builder(MainActivity.this);
                    aviso.setTitle("AVISO");
                    aviso.setMessage("Selecione um tipo de densidade");
                    aviso.setNeutralButton("OK", null);
                    aviso.show();    
                
                }        
            }        
        });    
    }
}

Eu apenas quero estabelecer uma condição quando o usuário deixar um dos 3 EditText estiver vazio , o programa mostrar alguma condição de erro

Matheus_Dias3

Mano, já está resolvido. Valeu. Era só a posição da condição que estava no lugar errado

if(ednumero5.getText().toString().isEmpty()){
                    Toast.makeText(MainActivity.this, "Digite O Comprimento", Toast.LENGTH_SHORT).show();
                    return ;
                }
                else if(ednumero2.getText().toString().isEmpty()){
                    Toast.makeText(MainActivity.this, "Digite A Largura", Toast.LENGTH_SHORT).show();
                    return;
                }
                else if(ednumero3.getText().toString().isEmpty()){
                    Toast.makeText(MainActivity.this, "Digite O Peso", Toast.LENGTH_SHORT).show();
                    return;
                }
            double num5 = Double.parseDouble(ednumero5.getText().toString());
            double num2 = Double.parseDouble(ednumero2.getText().toString());
            double num3 = Double.parseDouble(ednumero3.getText().toString());
            }
Criado 30 de novembro de 2016
Ultima resposta 1 de dez. de 2016
Respostas 7
Participantes 2