【问题标题】:Checkboxes to behave as a radionbutton in Titanium复选框在 Titanium 中充当单选按钮
【发布时间】:2015-04-20 12:38:26
【问题描述】:

我有两个水平对齐的复选框。 我想如果一个复选框被选中,另一个应该不选中。

switch1.addEventListener('change', function(e) {


        });

switch2.addEventListener('change', function(e) {


        });

上面的事件要写什么? 任何人都可以帮忙吗? 提前致谢

【问题讨论】:

  • 您为复选框使用的元素类型。 ?像视图、按钮或开关?如果是开关,那为什么?。您应该使用自定义复选框(例如带图像查看)。

标签: android titanium titanium-mobile


【解决方案1】:

您可以使用 Switch case 来做到这一点:

switch (v.getId()) {
    case R.id.chkBx1:
        if (chk1.isChecked()) {
            chk2.setEnabled(false);

        } else {
            chk1.setEnabled(true);
            chk2.setEnabled(true);

        }
        break;

    case R.id.chkBx2:
        if (chk2.isChecked()) {
            chk1.setEnabled(false);

        } else {
            chk1.setEnabled(true);
            chk2.setEnabled(true);

        }
        break;
    }

【讨论】:

    【解决方案2】:

    您必须在每个复选框的 onCLick 函数中将另一个 isEnabled property 设置为启用/禁用。

    switch1.addEventListener('change', function(e) {
        //Do your business
        switch2.setValue(!switch1.getValue());
        });
    
    switch2.addEventListener('change', function(e) {
        //Do your business
        switch1.setValue(!switch2.getValue());
        });
    

    【讨论】:

      【解决方案3】:

      这是一种实现单选按钮功能的方法。希望这会对你有所帮助。

      switch1.addEventListener('click', function(e) {
          switch1.isSelected = true;
          switch2.isSelected = false;
          switch1.image = 'selected.png';
          switch2.image = 'unselected.png';
      });
      
      switch2.addEventListener('click', function(e) {
          switch2.isSelected = true;
          switch1.isSelected = false;
          switch2.image = 'selected.png';
          switch1.image = 'unselected.png';
      });
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-10-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-08-18
        • 1970-01-01
        • 2021-02-16
        • 1970-01-01
        相关资源
        最近更新 更多