【问题标题】:How to set different row height which is dynamically loaded如何设置动态加载的不同行高
【发布时间】:2014-09-25 12:13:27
【问题描述】:

大家好,我遇到了动态加载表格行的情况。设置表格行的代码如下:

var rows = [];
_.each(records, function(rec) {
        var row = Alloy.createController('myRow', rec).getView();
        rows.push(row);
    });
}

$.myaTable.setData(rows);

我在每一行都有不同的价值。我想设置行高以适合文本。我试图设置行高

"TableViewRow": {
    height: Ti.UI.SIZE
}

我还更改了 myRow.js,例如 $.myRow.height = Ti.UI.SIZE

但问题是 - 它对所有行应用相同的高度。我在下面的图片中显示:

电流输出:

我的需要是:

编辑:

myRow.xml:

<TableViewRow id="ideaRow">
    <View id="content">
        <Label id="myTitle"></Label>
        <Label id="myDesc"></Label>
        <View id="control">
          <View id="Control1" />
          <View id="Control2" />
          <View id="Control3" />
        </View>
    </View>
<TableViewRow>

myRow.js:

$. myTitle.text = args.title
$. myDesc.text = args.description

您认为 Titanium 中是否存在任何解决方案。在此先感谢

【问题讨论】:

  • 在您的myRow 控制器内部。你是如何实例化行对象的?
  • Josaih,我编辑了问题

标签: titanium titanium-mobile titanium-alloy


【解决方案1】:

我无法重现 3.3.0.GA 的确切问题。

在 iOS 上,tableViewRows 会自动填满整个屏幕而没有任何 TSS。这是因为 myRow.xml 中的视图默认设置为 Ti.UI.FILL。解决方案是确保为 myRow.xml 中的标签设置 height: Ti.UI.SIZE

【讨论】:

  • 我接受菲尔您的反馈。其中一个视图 Control1 占用了最大行的高度,并且对所有行中的所有控件都应用了相同的高度。我必须将 Contrl1 的高度定义为特定的。它可以固定一些大小或 Ti.UI.SIZE
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-05-10
  • 1970-01-01
  • 1970-01-01
  • 2019-04-20
  • 1970-01-01
  • 2011-01-08
  • 2013-06-02
相关资源
最近更新 更多