Titanium - 无法在Android中实现单选按钮行为,在iphone中工作

时间:2012-08-29 07:11:29

标签: titanium

基本上我试图在Titanium中实现单选按钮功能,这可以在预期的iphone中运行,但在android中它允许我选择多个单选按钮。

这是我的代码

var lastRadioBtn = null;
tableViewAns.addEventListener('click', function(e) {

if(e.source.id === undefined) {
Ti.API.info("---IN IF---");
} else {
    Ti.API.info("---IN ELSE---");
    if(lastRadioBtn != null){
        Ti.API.info("---NOT NULL---");
        lastRadioBtn.image = '/images/Radio_Button_Not_Selected.png';
    }
    lastRadioBtn = e.source;
    lastRadioBtn.image = '/images/Radio_Button_Selected.png';

}

});

这里我创建了自定义行(1图像,文本),其中将选择图像单选按钮(在表单击时)和未选中的单选按钮,当单击任何其他行时。

一切似乎工作得很好,即使在android中,如果取消选择图像的条件但不知道它不起作用,我可以控制内部。

感谢。

2 个答案:

答案 0 :(得分:0)

试试这个,

var lastRadioBtn = false;

tableViewAns.addEventListener('click', function(e) {

if(e.source.id === undefined) {
  Ti.API.info("---IN IF---");
 }
else {
 Ti.API.info("---IN ELSE---");
 if(lastRadioBtn == false){
     Ti.API.info("---NOT NULL---");
     lastRadioBtn.image = '../images/Radio_Button_Not_Selected.png';
    }
 lastRadioBtn = e.source;
 lastRadioBtn.image = '../images/Radio_Button_Selected.png';
 }

});

可能这对你有帮助......干杯......

答案 1 :(得分:0)

我尝试了很多找到它的解决方案但无法解决它,我尝试了所有可能应用的属性(使用e.row,e.rowData,e.row.children [i])每个案例都正常工作IPhone但在Android中一直都失败了。我调试,条件完全与android一起工作,但不知道为什么不改变图像。

解决方案: - 我制作了一个图像阵列。 现在在表单击中我管理这个数组并使用这个数组而不是表行,这个解决方案适用于Android和Iphone。(从数组访问元素而不是获取表行,然后访问图像。)。我希望这会帮助每个人和这个bug(我在想什么)  将被解决。

感谢。