如何为每个 createTableViewRow 添加标签并将所有内容居中?

Posted

技术标签:

【中文标题】如何为每个 createTableViewRow 添加标签并将所有内容居中?【英文标题】:How can I add a label to each createTableViewRow and center everything? 【发布时间】:2014-05-07 17:31:18 【问题描述】:

我从 json 文件填充每个 Titanium.UI.createTableViewRow,我想知道如何为每个创建的 Titanium.UI.createTableViewRow 添加标签 (Titanium.UI.createLabel) 并将所有输出文本居中? 我已经创建了一个 Titanium.UI.createLabel,但是如何将我的标签添加到每个创建的 Titanium.UI.createTableViewRow 中,并使所有文本居中?

这是一个创建的标签:

var wrapperLabel = Titanium.UI.createLabel(
    text: 'Signed:',
    color: '#ffffff',
    textAlign:'center',
    font: 
        fontWeight: 'bold',
        fontSize: 22
    ,
    height:'auto'
);
win3.add(wrapperLabel);

var view = Titanium.UI.createTableView(
    maxRowHeight:40,
    minRowHeight:30,
    height: Titanium.UI.SIZE,
    width: Titanium.UI.FILL,
    color: 'black'
);
win3.add(view);

xhr.onload = function() 
    var data = [];
    var objects = JSON.parse(this.responseText);

    for (s in objects) 
        data.push(Titanium.UI.createTableViewRow(
            title: objects[s]
        ));
        data.push(Titanium.UI.createTableViewRow(
        title: objects[s].New
        ));
        data.push(Titanium.UI.createTableViewRow(
        title: objects[s].Signed
        ));
        data.push(Titanium.UI.createTableViewRow(
        title: objects[s].Returned
        ));
    
    view.data = data;
;

【问题讨论】:

【参考方案1】:

类似这样的:

for (s in objects)  
     var label = Ti.UI.createLabel (_properties_);
     var row = Ti.UI.createTableViewRow(_propeties_);
     row.add(label);
     data.push(row);

【讨论】:

【参考方案2】:

试试这个...

var row_propetiy = 
     height : "40dp"
;

var lbl_propetiy = 
    color: '#000',
    textAlign:'center',
    font: 
        fontWeight: 'bold',
        fontSize: '22dp'
    ,
    height:Ti.UI.FILL
;

xhr.onload = function() 
    var data = [];
    var objects = JSON.parse(this.responseText);

    for (s in objects) 
        var row = Ti.UI.createTableViewRow(row_propetiy);
        var lbl = Ti.UI.createLable(lbl_propetiy);
        lbl.text = objects[s];
        row.add(lbl);
        data.push(row);
    
    view.data = data;
;

【讨论】:

以上是关于如何为每个 createTableViewRow 添加标签并将所有内容居中?的主要内容,如果未能解决你的问题,请参考以下文章

如何为列表中的每个项目添加一个布尔值?

如何为每个 RadioButton 设置单独的颜色?

如何为每个 XML 节点添加换行符?

如何为每个单元分配号码?

iOS 如何为每个用户获取数据解析 Swift

如何为每个设备创建另一个独特的视图?