为什么按下android中的按钮不能激活toast?

时间:2014-01-06 22:06:36

标签: android android-edittext android-button android-toast

在按照以下条件单击“boton_continuar”按钮时,我正在尝试显示吐司: EditExt vacuum(numero_celular)和ckeckbox(check)检查否。这是我的代码

boton_continuar.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View arg0) {
        //Verificamos que se halla clikeado y se halla ingresado
        if(check.isChecked() && numero_celular.getText().length() != 0){

            Intent intent = new Intent(RegisterActivity.this, PrincipalActivity.class);
            startActivity(intent);
        }else{
            Context contexto = getApplicationContext();
            if(!check.isChecked()){                 
                Toast.makeText(contexto, "Debe aceptar los términos", 2000);
            }
            if(numero_celular.getText().length() == 0){
                Toast.makeText(contexto, "Debe ingresar su número", 2000);
            }
    }
}});

5 个答案:

答案 0 :(得分:9)

请务必在祝酒后致电.show()

boton_continuar.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View arg0) {
        //Verificamos que se halla clikeado y se halla ingresado
        if(check.isChecked() && numero_celular.getText().length() != 0){
            Intent intent = new Intent(RegisterActivity.this, PrincipalActivity.class);
            startActivity(intent);
        } else {
            Context contexto = getApplicationContext();
            if(!check.isChecked()){                 
                Toast.makeText(contexto, "Debe aceptar los términos", 2000).show();
            }
            if(numero_celular.getText().length() == 0){
                Toast.makeText(contexto, "Debe ingresar su número", 2000).show();
            }
        }
    }});

答案 1 :(得分:3)

两件事:

  1. 在你做的Toast上拨打.show()
  2. 2000不是Toast的有效参数。这不会让它显示2000毫秒。 Toast接受的唯一参数是Toast.LENGTH_SHORTToast.LENGTH_LONG
  3. 所以:

    更改这些行:

    Toast.makeText(contexto, "Debe aceptar los términos", 2000);
    Toast.makeText(contexto, "Debe ingresar su número", 2000);
    

    这些行:

    Toast.makeText(contexto, "Debe aceptar los términos", Toast.LENGTH_SHORT).show();
    Toast.makeText(contexto, "Debe ingresar su número", Toast.LENGTH_SHORT).show();
    

    Toast.LENGTH_SHORT为2000毫秒(2秒),Toast.LENGTH_LONG为3500毫秒(3.5秒)。

    • Toast.LENGTH_SHORT == 0所以您可以通过0代替。
    • Toast.LENGTH_LONG == 1因此您可以将其传递给1

    有关详细信息,请访问Toast上的Android文档。

答案 2 :(得分:1)

你必须使用SHOW功能。

执行:

Toast.makeText(contexto, "Debe ingresar su número", 2000).show();

答案 3 :(得分:1)

您需要在“Toast.makeText()”之后添加“.show()”。

例如:

if(!check.isChecked()){                 
            Toast.makeText(contexto, "Debe aceptar los términos", 2000).show();
            }
            if(numero_celular.getText().length() == 0){
                Toast.makeText(contexto, "Debe ingresar su número", 2000).show();
            }

答案 4 :(得分:0)

尝试以下方法:

 boton_continuar.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View arg0) {
        //Verificamos que se halla clikeado y se halla ingresado
        if(check.isChecked() && numero_celular.getText().length() != 0){


            Intent intent = new Intent(RegisterActivity.this, PrincipalActivity.class);
            startActivity(intent);
        }else{
            Context contexto = getApplicationContext();
            if(!check.isChecked()){                 
                Toast.makeText(contexto, "Debe aceptar los términos", 2000).show();
            }
            if(numero_celular.getText().length() == 0){
                Toast.makeText(contexto, "Debe ingresar su número", 2000).show();
            }


        }

    }});

您需要在Toast上调用.show()才能显示。