【问题标题】:Return message if no checkbox is selected如果未选中复选框,则返回消息
【发布时间】:2018-04-21 00:31:46
【问题描述】:

如何在此代码中实现更多功能,以便它返回一条消息,告诉用户如果他/她没有选择任何复选框,请“选择至少一个复选框”?

public void verificaCheckBox() {

    Listcheck.clear();

    if (cbPapel.isChecked())
        Listcheck.add(cbPapel.getText().toString());

    if (cbPlastico.isChecked())
        Listcheck.add(cbPlastico.getText().toString());

    if (cbMetal.isChecked())
        Listcheck.add(cbMetal.getText().toString());

    if (cbVidro.isChecked())
        Listcheck.add(cbVidro.getText().toString());

    cbSelecionado = (Listcheck.toString());
}

【问题讨论】:

    标签: java android


    【解决方案1】:
    public String verificaCheckBox(){
    
    Listcheck.clear();
    
    if (cbPapel.isChecked())
        Listcheck.add(cbPapel.getText().toString());
    
    if (cbPlastico.isChecked())
        Listcheck.add(cbPlastico.getText().toString());
    
    if (cbMetal.isChecked())
        Listcheck.add(cbMetal.getText().toString());
    
    if (cbVidro.isChecked())
        Listcheck.add(cbVidro.getText().toString());
    
    
        cbSelecionado = (Listcheck.toString());
    
    return Listcheck.isEmpty() ? "Message goes here" : "";
    
    }
    

    然后无论在哪里调用它都可以检查返回是空字符串还是消息。如果您只想向用户显示一条消息,您可以这样做:

    public void verificaCheckBox(){
    
    Listcheck.clear();
    
    if (cbPapel.isChecked())
        Listcheck.add(cbPapel.getText().toString());
    
    if (cbPlastico.isChecked())
        Listcheck.add(cbPlastico.getText().toString());
    
    if (cbMetal.isChecked())
        Listcheck.add(cbMetal.getText().toString());
    
    if (cbVidro.isChecked())
        Listcheck.add(cbVidro.getText().toString());
    
    
        cbSelecionado = (Listcheck.toString());
    
    if(Listcheck.isEmpty()) {
        Toast.makeText(applicationContext, "Your message", Toast.LENGTH_SHORT).show();
    }
    
    
    }
    

    【讨论】:

      【解决方案2】:

      尝试使用警报对话框来完成此操作。 我相信以下链接提供了有关如何执行此操作的更多相关详细信息: How to add message box with ok button

      用更简单的步骤为您介绍:

      • 在代码末尾添加 else 语句。
      • 使用警报对话框通知用户需要进行的更改。

      【讨论】:

        【解决方案3】:

        我不确定我是否理解您的问题,但如果您想向用户发送消息,您可以使用Toast

        例如:

        if (Listcheck.size() == 0)
           Toast.makeText(this, "select at least one checkbox", Toast.LENGTH_SHORT).show();
        

        【讨论】:

          猜你喜欢
          • 2014-11-24
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-03-11
          • 1970-01-01
          • 2019-02-22
          • 1970-01-01
          • 2013-12-09
          相关资源
          最近更新 更多