Titanium TableView手风琴

时间:2012-01-31 12:32:42

标签: javascript user-interface titanium accordion

我正要扩展Appcelerators Titanium的TableView对象,以便以手风琴式隐藏和显示行。

想知道是否有人已经提出了我应该考虑的解决方案或好的建议。

1 个答案:

答案 0 :(得分:0)

TableViewRow有一个hide()和一个show()方法:http://developer.appcelerator.com/apidoc/mobile/latest/Titanium.UI.TableViewRow-object

然而,这些都行不通。 我最终做的是将一个表放在一行中,单击时调整它的大小,并在调整表的大小后调用setHeight('auto')以便行调整。它实际上会自动动画高度变化(尽管动画看起来有点破碎),我会尽快制作一个合适的小助手功能。现在,如果它可以帮助任何人,这里是片段:

// Toggle Accordion
settingsTable.addEventListener('click', function(e)
{
    alert(B.helper.var_dump(innertable));
    if(e.index === 2){
        if(innertable.height === 200){
            innertable.height = 45;
            row3.setHeight('auto');
        }else{

            //alert(B.helper.var_dump(settingsTable.data[0].rows[3]));
            innertable.height = 200;
            row3.setHeight('auto');
        }
    }
});