Code does not read ELSE [closed]

0

Personally speaking, I'm a beginner on Android and would like you to ask me a question. I am making an app so that the user completes all EditText's so that the program can perform the correct calculations and therefore expose the result in the next Activity that would be called. After the cod check EditText's, it should enter ELSE to be able to open the new window, however this does not happen. The alert messages of the checks are shown normally, but the part of going to another screen is not. Do you know what it can be? Following the code, it is a bit large but it is not difficult and I imagine many of you will not see it completely, but come on:

  public void onClick (View View) {

    // RESISTENCIA DO CONCRETO

    if (txt_resistencia_concreto.getText().toString().equals("")) {   // O que faltava era o toString()

        //Cria o gerador do AlertDialog
        AlertDialog.Builder builder = new AlertDialog.Builder(this);

        //define o titulo

        builder.setTitle("Campos em branco");

        //define a mensagem
        builder.setMessage("Preencha a resistência do concreto");

        //define um botão como positivo
        builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
            }
        });

        AlertDialog alert = builder.create();
        alert.show();


        //MASSA ESPECIFICA DO CIMENTO

    } else if (txt_massa_especifica_cimento.getText().toString().equals("")) {

        //Cria o gerador do AlertDialog
        AlertDialog.Builder builder = new AlertDialog.Builder(this);

        //define o titulo

        builder.setTitle("Campos em branco");

        //define a mensagem
        builder.setMessage("Preencha a massa específica do cimento");

        //define um botão como positivo
        builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
            }
        });

        AlertDialog alert = builder.create();
        alert.show();

        //ADITIVO MINERAL - VERIFICAÇÃO 1

        //TODOS OS CAMPOS VAZIOS
    } else if (txt_massa_especifica_aditivo_mineral1.getText().toString().equals("") && txt_teor_aditivo_mineral1.getText().toString().equals("") && txt_massa_especifica_aditivo_mineral2.getText().toString().equals("") && txt_teor_aditivo_mineral2.getText().toString().equals("")) {

        //Cria o gerador do AlertDialog
        AlertDialog.Builder builder = new AlertDialog.Builder(this);

        //define o titulo

        builder.setTitle("Campos em branco");

        //define a mensagem
        builder.setMessage("Preencha ao menos um aditivo mineral.");

        //define um botão como positivo
        builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
            }
        });

        AlertDialog alert = builder.create();
        alert.show();

        //ADITIVO MINERAL - VERIFICAÇÃO 2

        //MASSA ESPECIFICA DO ADITIVO MINERAL 1 VAZIA E TEOR PREENCHIDO
    } else if (txt_massa_especifica_aditivo_mineral1.getText().toString().equals("") && (txt_teor_aditivo_mineral1.length() != 0)) {

        //Cria o gerador do AlertDialog
        AlertDialog.Builder builder = new AlertDialog.Builder(this);

        //define o titulo

        builder.setTitle("Campos em branco");

        //define a mensagem
        builder.setMessage("Preencha o teor de aditivo mineral 1.");

        //define um botão como positivo
        builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
            }
        });

        AlertDialog alert = builder.create();
        alert.show();

        //ADITIVO MINERAL - VERIFICAÇÃO 3

        //MASSA ESPECIFICA DO ADITIVO MINERAL 1 PREENCHIDA E TEOR VAZIO
    } else if (txt_massa_especifica_aditivo_mineral1.length() != 0 && (txt_teor_aditivo_mineral1.getText().toString().equals(""))) {

        //Cria o gerador do AlertDialog
        AlertDialog.Builder builder = new AlertDialog.Builder(this);

        //define o titulo

        builder.setTitle("Campos em branco");

        //define a mensagem
        builder.setMessage("Preencha o teor a ser utilizado do aditivo mineral 1.");

        //define um botão como positivo
        builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
            }
        });

        AlertDialog alert = builder.create();
        alert.show();

        //ADITIVO MINERAL - VERIFICAÇÃO 4

        //MASSA ESPECIFICA DO ADITIVO MINERAL 2 VAZIA E TEOR PREENCHIDO
    } else if (txt_massa_especifica_aditivo_mineral2.getText().toString().equals("") && (txt_teor_aditivo_mineral2.length() != 0)) {

        //Cria o gerador do AlertDialog
        AlertDialog.Builder builder = new AlertDialog.Builder(this);

        //define o titulo

        builder.setTitle("Campos em branco");

        //define a mensagem
        builder.setMessage("Preencha o teor de aditivo mineral 2.");

        //define um botão como positivo
        builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
            }
        });

        AlertDialog alert = builder.create();
        alert.show();

        //ADITIVO MINERAL - VERIFICAÇÃO 5

        //MASSA ESPECIFICA DO ADITIVO MINERAL 2 PREENCHIDA E TEOR VAZIO
    } else if (txt_massa_especifica_aditivo_mineral2.length() != 0 && (txt_teor_aditivo_mineral2.getText().toString().equals(""))) {

        //Cria o gerador do AlertDialog
        AlertDialog.Builder builder = new AlertDialog.Builder(this);

        //define o titulo

        builder.setTitle("Campos em branco");

        //define a mensagem
        builder.setMessage("Preencha a massa específica do aditivo mineral 1.");

        //define um botão como positivo
        builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
            }
        });

        AlertDialog alert = builder.create();
        alert.show();

        //MASSA ESPECIFICA SSS DA BRITA

    } else if (txt_massa_especifica_sss_brita.getText().toString().equals("")) {

        //Cria o gerador do AlertDialog
        AlertDialog.Builder builder = new AlertDialog.Builder(this);

        //define o titulo

        builder.setTitle("Campos em branco");

        //define a mensagem
        builder.setMessage("Preencha a massa especifica sss da brita");

        //define um botão como positivo
        builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
            }
        });

        AlertDialog alert = builder.create();
        alert.show();

        //TEOR AGUA NA BRITA

    } else if (txt_teor_agua_brita.getText().toString().equals("")) {

        //Cria o gerador do AlertDialog
        AlertDialog.Builder builder = new AlertDialog.Builder(this);

        //define o titulo

        builder.setTitle("Campos em branco");

        //define a mensagem
        builder.setMessage("Preencha o teor de água que consta na brita");

        //define um botão como positivo
        builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
            }
        });

        AlertDialog alert = builder.create();
        alert.show();

        //ABSORCAO AGUA NA BRITA

    } else if (txt_absorcao_agua_brita.getText().toString().equals("")) {

        //Cria o gerador do AlertDialog
        AlertDialog.Builder builder = new AlertDialog.Builder(this);

        //define o titulo

        builder.setTitle("Campos em branco");

        //define a mensagem
        builder.setMessage("Preencha a absorção de água da brita");

        //define um botão como positivo
        builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
            }
        });

        AlertDialog alert = builder.create();
        alert.show();


        //MASSA ESPECIFICA SSS NA AREIA

    } else if (txt_massa_especifica_sss_areia.getText().toString().equals("")) {

        //Cria o gerador do AlertDialog
        AlertDialog.Builder builder = new AlertDialog.Builder(this);

        //define o titulo

        builder.setTitle("Campos em branco");

        //define a mensagem
        builder.setMessage("Preencha a massa especifica SSS da areia");

        //define um botão como positivo
        builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
            }
        });

        AlertDialog alert = builder.create();
        alert.show();

        //TEOR ÁGUA NA AREIA

    } else if (txt_teor_agua_areia.getText().toString().equals("")) {

        //Cria o gerador do AlertDialog
        AlertDialog.Builder builder = new AlertDialog.Builder(this);

        //define o titulo

        builder.setTitle("Campos em branco");

        //define a mensagem
        builder.setMessage("Preencha o teor de água que consta na areia");

        //define um botão como positivo
        builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
            }
        });

        AlertDialog alert = builder.create();
        alert.show();

        //ABSORCAO AGUA NA AREIA

    } else if (txt_absorcao_agua_areia.getText().toString().equals("")) {

        //Cria o gerador do AlertDialog
        AlertDialog.Builder builder = new AlertDialog.Builder(this);

        //define o titulo

        builder.setTitle("Campos em branco");

        //define a mensagem
        builder.setMessage("Preencha a absorção de água da areia");

        //define um botão como positivo
        builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
            }
        });

        AlertDialog alert = builder.create();
        alert.show();

        //MASSA ESPECIFICA ADITIVO

    } else if (txt_massa_especifica_aditivo_quimico.getText().toString().equals("")) {

        //Cria o gerador do AlertDialog
        AlertDialog.Builder builder = new AlertDialog.Builder(this);

        //define o titulo

        builder.setTitle("Campos em branco");

        //define a mensagem
        builder.setMessage("Preencha a massa especifica do aditivo quimico");

        //define um botão como positivo
        builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
            }
        });

        AlertDialog alert = builder.create();
        alert.show();

        //PONTO SATURACAO ADITIVO

    } else if (txt_ponto_Saturacao.getText().toString().equals("")) {

        //Cria o gerador do AlertDialog
        AlertDialog.Builder builder = new AlertDialog.Builder(this);

        //define o titulo

        builder.setTitle("Campos em branco");

        //define a mensagem
        builder.setMessage("Preencha o ponto de saturação do aditivo quimico");

        //define um botão como positivo
        builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
            }
        });

        AlertDialog alert = builder.create();
        alert.show();

        //TEOR DE SOLIDOS

    } else if (txt_teor_solidos.getText().toString().equals("")) {

        //Cria o gerador do AlertDialog
        AlertDialog.Builder builder = new AlertDialog.Builder(this);

        //define o titulo

        builder.setTitle("Campos em branco");

        //define a mensagem
        builder.setMessage("Preencha o teor de sólidos do aditivo químico");

        //define um botão como positivo
        builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
            }
        });

        AlertDialog alert = builder.create();
        alert.show();

        //AR INCORPORADO

    } else if (txt_ar_incorporado.getText().toString().equals("")) {

        //Cria o gerador do AlertDialog
        AlertDialog.Builder builder = new AlertDialog.Builder(this);

        //define o titulo

        builder.setTitle("Campos em branco");

        //define a mensagem
        builder.setMessage("Preencha o teor de ar incorporado no concreto");

        //define um botão como positivo
        builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
            }
        });

        AlertDialog alert = builder.create();
        alert.show();


        //---------------------------------------------------------------------------------------------------------------------


        //SE O MÉTODO DE AITCIN FOI SELECIONADO, VERIFICA SE A RESISTENCIA ESTÁ DENTRO DOS LIMITES

    } else if (check_aitcin.isChecked()) {

        double converte_resistencia = Double.parseDouble(txt_resistencia_concreto.getText().toString());

        if (converte_resistencia < 40 || converte_resistencia > 160) {

            //Cria o gerador do AlertDialog
            AlertDialog.Builder builder = new AlertDialog.Builder(this);

            //define o titulo

            builder.setTitle("Resistência do Concreto");

            //define a mensagem
            builder.setMessage("O método de Aitcin é limitado para resistencias entre 40 e 160 MPA.");

            //define um botão como positivo
            builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int id) {
                }
            });

            AlertDialog alert = builder.create();
            alert.show();

        }


        //SE O MÉTODO DE MEHTA FOI SELECIONADO, VERIFICA SE A RESISTENCIA ESTÁ DENTRO DOS LIMITES

    } else if (check_mehta.isChecked()) {

        double converte_resistencia = Double.parseDouble(txt_resistencia_concreto.getText().toString());

        if (converte_resistencia < 60 || converte_resistencia > 120) {

            //Cria o gerador do AlertDialog
            AlertDialog.Builder builder = new AlertDialog.Builder(this);

            //define o titulo

            builder.setTitle("Resistência do Concreto");

            //define a mensagem
            builder.setMessage("O método de Mehta - Aitcin é limitado para resistencias entre 60 e 120 MPA. ");

            //define um botão como positivo
            builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int id) {
                }
            });

            AlertDialog alert = builder.create();
            alert.show();

        }

        //TEOR DE ADITIVO QUIMICO

    } else if (check_mehta.isChecked() && txt_teor_aditivo.getText().toString().equals("")) {

        //Cria o gerador do AlertDialog
        AlertDialog.Builder builder = new AlertDialog.Builder(this);

        //define o titulo

        builder.setTitle("Campos em branco");

        //define a mensagem
        builder.setMessage("Preencha o teor de aditivo químico");

        //define um botão como positivo
        builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
            }
        });

        AlertDialog alert = builder.create();
        alert.show();

        //SE METODO DE AITCIN FOI SELECIONADO,

    } else {

       Intent it = new Intent (this, Resultado_Aitcin.class);

        startActivity(it);

    }

}
    
asked by anonymous 16.01.2017 / 00:45

1 answer

0
 public void onClick (View View) {

// RESISTENCIA DO CONCRETO

    if (txt_resistencia_concreto.getText().toString().equals("")) // O que faltava era o toString()
        showError("Campos em branco", "Preencha a resistência do concreto");

    else if (txt_massa_especifica_cimento.getText().toString().equals("")) 
        showError("Campos em branco", "Preencha a massa específica do cimento");

    else if (txt_massa_especifica_aditivo_mineral1.getText().toString().equals("") && txt_teor_aditivo_mineral1.getText().toString().equals("") && txt_massa_especifica_aditivo_mineral2.getText().toString().equals("") && txt_teor_aditivo_mineral2.getText().toString().equals("")) 
        showError("Campos em branco", "Preencha ao menos um aditivo mineral.");

    else if (txt_massa_especifica_aditivo_mineral1.getText().toString().equals("") && (txt_teor_aditivo_mineral1.length() != 0)) 
        showError("Campos em branco", "Preencha o teor de aditivo mineral 1.");

    else if (txt_massa_especifica_aditivo_mineral1.length() != 0 && (txt_teor_aditivo_mineral1.getText().toString().equals(""))) 
        showError("Campos em branco", "Preencha o teor de aditivo mineral 2.");

    else if (txt_massa_especifica_aditivo_mineral2.getText().toString().equals("") && (txt_teor_aditivo_mineral2.length() != 0)) 
        showError("Campos em branco", "Preencha o teor de aditivo mineral 2.");

    else if (txt_massa_especifica_aditivo_mineral2.length() != 0 && (txt_teor_aditivo_mineral2.getText().toString().equals("")))
        showError("Campos em branco", "Preencha a massa específica do aditivo mineral 1.");

    else if (txt_massa_especifica_sss_brita.getText().toString().equals("")) 
        showError("Campos em branco", "Preencha a massa especifica sss da brita");

    else if (txt_teor_agua_brita.getText().toString().equals("")) 
        showError("Campos em branco", "Preencha o teor de água que consta na brita");

    else if (txt_absorcao_agua_brita.getText().toString().equals("")) 
        showError("Campos em branco", "Preencha a absorção de água da brita");

    else if (txt_massa_especifica_sss_areia.getText().toString().equals("")) 
        showError("Campos em branco", "Preencha a massa especifica SSS da areia");

    else if (txt_teor_agua_areia.getText().toString().equals("")) 
        showError("Campos em branco", "Preencha o teor de água que consta na areia");

    else if (txt_absorcao_agua_areia.getText().toString().equals("")) 
        showError("Campos em branco", "Preencha a absorção de água da areia");

    else if (txt_massa_especifica_aditivo_quimico.getText().toString().equals(""))
        showError("Campos em branco", "Preencha a massa especifica do aditivo quimico");

    else if (txt_ponto_Saturacao.getText().toString().equals(""))   
        showError("Campos em branco", "Preencha o ponto de saturação do aditivo quimico");

    else if (txt_teor_solidos.getText().toString().equals(""))      
        showError("Campos em branco", "Preencha o teor de sólidos de aditivos quimicos");

    else if (txt_ar_incorporado.getText().toString().equals(""))    
        showError("Campos em branco", "Preencha o teor de ar incorporado no concreto");

    else {
        if (check_aitcin.isChecked()) {
            double converte_resistencia =  Double.parseDouble(txt_resistencia_concreto.getText().toString());
            if (converte_resistencia < 40 || converte_resistencia > 160) {

            }
        } else if (check_mehta.isChecked()) {
            double converte_resistencia =  Double.parseDouble(txt_resistencia_concreto.getText().toString());
            if (converte_resistencia < 60 || converte_resistencia > 120) {

            }
        }
       startActivity(new Intent(this, Resultado_Aitcin.class));
    }

}

private void showError(String title, String err){
    AlertDialog.Builder builder = new AlertDialog.Builder(this);

    builder.setTitle(title);
    builder.setMessage(err);

    builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int id) {
        }
    });

    AlertDialog alert = builder.create();
    alert.show();
}

I have refitted your code and believe that the problem has been solved, I have also removed some unnecessary things that could be reused. The code seems to me to be cleaner.

From what I saw, the problem seemed to be in this snippet of code:

else if (check_mehta.isChecked()) {

    double converte_resistencia = Double.parseDouble(txt_resistencia_concreto.getText().toString());

    if (converte_resistencia < 60 || converte_resistencia > 120) {

        //Cria o gerador do AlertDialog
        AlertDialog.Builder builder = new AlertDialog.Builder(this);

        //define o titulo

        builder.setTitle("Resistência do Concreto");

        //define a mensagem
        builder.setMessage("O método de Mehta - Aitcin é limitado para resistencias entre 60 e 120 MPA. ");

        //define um botão como positivo
        builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
            }
        });

        AlertDialog alert = builder.create();
        alert.show();

    }

    //TEOR DE ADITIVO QUIMICO

} else if (check_mehta.isChecked() && txt_teor_aditivo.getText().toString().equals("")) {

    //Cria o gerador do AlertDialog
    AlertDialog.Builder builder = new AlertDialog.Builder(this);

    //define o titulo

    builder.setTitle("Campos em branco");

    //define a mensagem
    builder.setMessage("Preencha o teor de aditivo químico");

    //define um botão como positivo
    builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int id) {
        }
    });

    AlertDialog alert = builder.create();
    alert.show();

    //SE METODO DE AITCIN FOI SELECIONADO,

} else {

   Intent it = new Intent (this, Resultado_Aitcin.class);

    startActivity(it);

}

See that in your code above you have created a condition so that if one of your checkbox is checked, it re-analyzes the condition and checks to see if a particular value has been entered. I've moved this check to else , because it will only enter else if all EditText is filled, ie, you do not need to check if there is any blank again, what was done by you, and then < If nothing is blank , perform an action, but this has not been done , so it does not reach ELSE .

    
16.01.2017 / 04:54