希望像JavaScript那样,出先这种情况时,表单不会被提交

解决方案 »

  1.   

    检测是否选中啊。。通过监听方法setOnCheckedChangeListener();
      

  2.   

    你可以在布局文件里面加一个RadioGroup,把RadioButton放在里面,这样就至少要选择一个了;
    然后再监听setOnClickListener
      

  3.   

    我是这样的一个情况
    radiobutton已经放在了group里,用户也只能选一个,并且把默认选一个给屏蔽了
    用户每次都能看见四个未选中的radiobutton,我希望当他一个都没选的时候,程序给出提示,然后停在这,只有用户至少选了一个,才能确定往下走,是个答题程序一共三十道,四选一
      

  4.   

    这样的话,你可以在监听setOnClickListener里面控制啊,如果一个都没有选的话就不让走下去
      

  5.   


    //在确定提交按钮上做文章,将判断放在这个按钮的onClick事件里
    public void onClick(View v){
    //将四个RadioButton实体化,便于操作
    RadioButton rb5 = (RadioButton) Personality_1.this
    .findViewById(R.id.radioButton1);
    RadioButton rb6 = (RadioButton) Personality_1.this
    .findViewById(R.id.radioButton2);
    RadioButton rb7 = (RadioButton) Personality_1.this
    .findViewById(R.id.radioButton3);
    RadioButton rb8 = (RadioButton) Personality_1.this
    .findViewById(R.id.radioButton4);
    //用个if-else语句做判断
    if (!rb5.isChecked() && !rb6.isChecked() && 
    !rb7.isChecked()&& !rb8.isChecked()) 
    //isChecked是RadioButton自有的方法,直接拿来用就是。
    //该方法返回一个boolean值,选中返回true,否则false
    {
    break;//如果四个都没有被选中直接break,程序就停在那了,只有用户选了一个之后才会进行下去
    //当然为了改善用户体验可以在这里增加个提示,告知用户至少选一个(如Toast之类的)
    } else//里面用来处理用户选中时怎样处理,具体方法网上很多关于RadioGroup的介绍都有
    {
    RadioGroup m_RadioGroup = (RadioGroup) findViewById(R.id.radioGroup1);
    m_RadioGroup.setOnCheckedChangeListener();
    }
    }
      

  6.   

    那个break其实是退出了这次onClick的执行,当你再次点击确定提交按钮时,这个方法将被再次调用,用户的感觉就是,程序“停在那了”
      

  7.   

    问一下 那个 break 怎么用?
      

  8.   

    break就是跳出当前函数或循环
      

  9.   

    break只能跳出循环。是当前的循环。return才是结束函数。