复位按钮上的复位复选框单击钛

时间:2015-01-24 00:50:24

标签: titanium

我用谷歌搜索,发现下面的代码创建复选框。但是当我点击复选框时,这些复选框被选中。我的要求是,我需要一个复选框被选中而其他复选框未选中。这是一个复选框必须被选中一次。按下重置按钮应该取消选中所有复选框。

 var win = Ti.UI.createWindow({backgroundColor:"white"});
 var checkbox = Ti.UI.createSwitch({
style:Ti.UI.Android.SWITCH_STYLE_CHECKBOX,
title:"male",
value:true
 });

win.add(checkbox);
checkbox.addEventListener("change", function(e){
Ti.API.info("The checkbox has been set to " + e.value);
});
  var checkbox1 = Ti.UI.createSwitch({
style:Ti.UI.Android.SWITCH_STYLE_CHECKBOX,
title:"female",
value:true
 });

win.add(checkbox1);
checkbox1.addEventListener("change", function(e){
Ti.API.info("The checkbox has been set to " + e.value);
});
var resetbtn = Ti.UI.createButton({
top : '100',
width : '50',
height : '35',
title  : 'Reset'
});
win1.add(resetbtn);
resetbtn.addEventListener('click', function(){
checkbox.value='';
 }
win.open();

请帮助我,我是钛的新手,我希望复选框应该在预设复位按钮和一个复选框时不要点击,以便一次点击。

1 个答案:

答案 0 :(得分:1)

根据您的查询,您需要以下内容:

  1. 您需要选中一个复选框,而其他复选框未选中我是,e,     必须一次检查一个复选框。
  2. 应取消选中所有复选框的重置按钮。
  3. 对于第1点:以下是此点的代码:

         var win = Ti.UI.createWindow({backgroundColor:"white"});
    
         var checkbox = Ti.UI.createSwitch({
             style:Ti.UI.Android.SWITCH_STYLE_CHECKBOX,
             title:"male",
             value:true,
             width: "200dp", height:"120dp", left:"10dp"
         });
    
         win.add(checkbox);
         checkbox.addEventListener("change", function(e){
             Ti.API.info("The checkbox has been set to " + e.value);
             if(e.value) {
                checkbox1.value=false;
             } else {
                checkbox1.value=true;
             }
        });
    
        var checkbox1 = Ti.UI.createSwitch({
          style:Ti.UI.Android.SWITCH_STYLE_CHECKBOX,
          title:"female",
          value:true
       });
    
       win.add(checkbox1);
       checkbox1.addEventListener("change", function(e){
          Ti.API.info("The checkbox has been set to " + e.value);
          if(e.value) {
             checkbox.value=false;
          } else {
            checkbox.value=true;
          }
       });
       var resetbtn = Ti.UI.createButton({
       top : '100',
       width : '50',
       height : '35',
       title  : 'Reset'
       });
       win.add(resetbtn);
    
       resetbtn.addEventListener('click', function(){
           Ti.API.info('Refresh button click');
    
       });
    
       win.open(); 
    

    对于第2点:我只是根据您的需要编写代码,但这不是我想的正确方法。如果您想根据您的要求重置复选框(一次必须选中一个复选框),那么最好使用图像复选框或单选按钮。但这是代码:

    var win = Ti.UI.createWindow({backgroundColor:"white"});
    var checkFlag = true;
    var resetTouch = false;
     var checkbox = Ti.UI.createSwitch({
    style:Ti.UI.Android.SWITCH_STYLE_CHECKBOX,
    title:"male",
    value:true,
    width: "200dp", height:"120dp", left:"10dp"
     });
    
    win.add(checkbox);
    checkbox.addEventListener("change", function(e){
    Ti.API.info("The checkbox has been set to " + e.value);
    if(e.value) {
        checkbox1.value=false;
    } else {
        checkbox1.value=true;
    }
    
    
    });
      var checkbox1 = Ti.UI.createSwitch({
    style:Ti.UI.Android.SWITCH_STYLE_CHECKBOX,
    title:"female",
    value:true
     });
    
    win.add(checkbox1);
    checkbox1.addEventListener("change", function(e){
    Ti.API.info("The checkbox has been set to " + e.value);
    if(e.value) {
        checkbox.value=false;
    } else {
        checkbox.value=true;
    }
    });
    var resetbtn = Ti.UI.createButton({
    top : '100',
    width : '50',
    height : '35',
    title  : 'Reset'
    });
    win.add(resetbtn);
    
    var checkboxNew = Ti.UI.createSwitch({
        style:Ti.UI.Android.SWITCH_STYLE_CHECKBOX,
        title:"male",
        value:false,
        width: "200dp", height:"120dp", left:"10dp"
     });
    win.add(checkboxNew);
    
    var checkboxNew1 = Ti.UI.createSwitch({
        style:Ti.UI.Android.SWITCH_STYLE_CHECKBOX,
        title:"female",
        value:false
    });
    
    win.add(checkboxNew1);
    
    resetbtn.addEventListener('click', function(){
        Ti.API.info('checkFlag = ' + checkFlag);
        if(checkFlag) {
            checkbox.hide();
            checkbox1.hide();
            checkboxNew.show();
            checkboxNew1.show();
    
            checkFlag = false;
        } else {
            checkbox.show();
            checkbox1.show();
            checkboxNew.hide();
            checkboxNew1.hide();
    
            checkFlag = true;
        }
    
    });
    checkboxNew.addEventListener("change", function(e){
        Ti.API.info("The checkboxNew has been set to " + e.value);
        checkboxNew.value=false;
        checkboxNew1.value=false;
    
    });
    checkboxNew1.addEventListener("change", function(e){
        Ti.API.info("The checkboxNew1 has been set to " + e.value);
        checkboxNew.value=false;
        checkboxNew1.value=false;
    
    });
    checkbox.hide();
    checkbox1.hide();
    checkboxNew.show();
    checkboxNew1.show();
    
    
    win.open();
    

    请看一下。