O_Casper_ne 2013-08-02 05:39 采纳率: 7.7%
浏览 2399
已采纳

Checkboxes 让 toast 多次出现的问题

我在程序中设置了两个 checkboxes 和两个 EditText。点击一个 CheckBox 时 EditText 消失,然后显示Toast ,"Your Information is Saved",如何再次点击 CheckBox时,另一个Toast 会显示"Enter Your Email Address"。两个toast在每次点击后都可以正常运行。这是什么原因?

on.setOnClickListener(new View.OnClickListener() {
  public void onClick(View v) {
    if (((CheckBox) v).isChecked())
      receiverEmail.setVisibility(View.GONE);
    if (((CheckBox) v).isChecked())
      Toast.makeText(getApplicationContext(), 
      "Your Information is Saved", Toast.LENGTH_LONG).show();
    else
      receiverEmail.setVisibility(View.VISIBLE);
      Toast.makeText(getApplicationContext(), 
      "Enter Your Email Address", Toast.LENGTH_LONG).show();
  }
});

on2.setOnClickListener(new View.OnClickListener() {
  public void onClick(View v) {
    if (((CheckBox) v).isChecked())
      clientID.setVisibility(View.GONE);
    if (((CheckBox) v).isChecked())
      Toast.makeText(getApplicationContext(), 
      "Your Information is Saved", Toast.LENGTH_LONG).show();
    else
      clientID.setVisibility(View.VISIBLE);
      Toast.makeText(getApplicationContext(), 
      "Enter Your Email Address", Toast.LENGTH_LONG).show();
  }
});
  • 写回答

3条回答

  • xuqili 2013-08-02 06:34
    关注
    if (((CheckBox) v).isChecked()){
          Toast.makeText(getApplicationContext(), 
          "Your Information is Saved", Toast.LENGTH_LONG).show();
    }
        else{
          receiverEmail.setVisibility(View.VISIBLE);
          Toast.makeText(getApplicationContext(), 
          "Enter Your Email Address", Toast.LENGTH_LONG).show();
    }
    

    if else 如果省略{}的话只会执行临近的一行代码,第二行是不会执行的,你的问题应该是因为else后执行一行代码receiverEmail.setVisibility(View.VISIBLE);,导致Toast.makeText(getApplicationContext(),
    "Enter Your Email Address", Toast.LENGTH_LONG).show();无论如何都会执行的
    楼主看下是不是因为这个。。。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码