如何在动态填充的tableView上设置行高? (钛工作室)

时间:2012-10-08 11:30:28

标签: iphone titanium

我是Titanium Studio的新手。需要动态设置行高,但是我无法在每行中设置动态高度。以下是我的代码:

textArray包含10个文本段落。每个段落都有不同的高度。

var myTable = Ti.UI.createTableView({height:360, width: 306, top: 58, backgroundColor: '#FFFFFF',borderColor: '#C8C8C8',borderWidth:2, zIndex: -1});
var myArray = [];

for(int i = 0; i < 10; i++)
{

    var row = Ti.UI.createTableViewRow({contentHeight: 'auto', width: 320,top:0});

    var my = Ti.UI.createView({ top:10,width:300,height:'auto' });

    var myText = Ti.UI.createlLabel({text:textArray[i],width:50,height:'auto',left:10,top:5,borderRadius:4});

    my.add(myText);

    row.add(my);
    myArray.push(row);

}

如何动态设置行高。

任何人都可以帮忙吗?

3 个答案:

答案 0 :(得分:1)

根据理解,您需要按文字显示单元格高度

以下是一些很好的例子

  1. Similar post on Stackoverflow

  2. Example given on some blog

  3. 希望这能解决你的问题。

答案 1 :(得分:1)

我得到了解决方案:

specify your table rowHeight as auto.

var myTable = Ti.UI.createTableView({height:400,rowHeight: 'auto', width: 312, top: 10,left:4, backgroundColor: '#FFFFFF',borderColor: '#C8C8C8',borderWidth:2, zIndex: -1});
var myArray=[];   

for(int i = 0; i < 10; i++)
{
    //create row in table.
    var row = Ti.UI.createTableViewRow({height: 'auto', width: 310,top:10, selectionStyle : Titanium.UI.iPhone.TableViewCellSelectionStyle.NONE});

    //textArray contains 10 elements. i am using this in each loop..
    var myText = Ti.UI.createlLabel({text:textArray[i],width:50,height:50,left:10,top:5,borderRadius:4});

    //add like this what ever you want...
    row.add(myText);

    myArray.push(row);

}

//store in table
myTable.data = myArray;

//disply table.
win.add(myTable);

如果height:'auto'属性不起作用,请使用Ti.UI.SIZE

我希望......有人会用它。

答案 2 :(得分:-1)

将内容高度更改为您希望的桌面高度