我是钛开发的新手。我正在使用Titanium开发ToDo应用程序用于学习目的。我能够显示数据库中的数据并成功生成tableViewRow但我陷入了一个阶段,我无法在每一行显示按钮。我为它做了R& D但是我无法得到解决方案。我在tableViewRow的每一行显示按钮的代码,它显示每行中数据库的所有记录但不显示buttons.it在每行显示[object TableViewRow]而不是按钮。所以请帮我解决问题
![Titanium.UI.setBackgroundColor('black');
var win = Titanium.UI.createWindow
({
title:'Tab 1',
backgroundColor:'#fff'
});
var db = Titanium.Database.install('/mydata/ToDoDB', 'ToDoDB');
var rows = db.execute('SELECT * FROM task');
var data1=[];
while(rows.isValidRow())
{
var rowview=Titanium.UI.createTableViewRow();
var btn=Titanium.UI.createButton
({
right:'20dp',
width:'60dp',
height:'40dp',
title:'Show'
});
rowview.add(btn);
var tt=rows.fieldByName('title');
var cc=rows.fieldByName('content');
//data1.push({title:rows.fieldByName('title')},{title:rows.fieldByName('content')},{title:rowview});
data1.push({title:tt+cc+rowview});
rows.next();
//rowview.add(btn);
};
rows.close();
var yourTable = Ti.UI.createTableView
({
width : Ti.UI.FILL,
height : Ti.UI.FILL,
data: data1
});
db.close();
win.add(yourTable);
win.open();
答案 0 :(得分:0)
一旦你开始包含按钮等,你正在寻找的是一个自定义行。
这是一个旧的,但仍然提供信息的例子
http://cssgallery.info/custom-row-for-tableview-in-appcelerator-titanium/
基本思想是创建视图,将其放在行中,然后将其他行UI对象添加到该视图中
答案 1 :(得分:0)
尝试以下
var rowview = Titanium.UI.createTableViewRow();
var tt=rows.fieldByName('title');
var cc=rows.fieldByName('content');
var btn=Titanium.UI.createButton({
right:'20dp',
width:'60dp',
height:'40dp',
title:'Show'
});
var labeltt=Titanium.UI.createLabel({
left:'20dp',
width:'60dp',
height:'40dp',
text:tt
});
var labelcc=Titanium.UI.createLabel({
left:'80dp',
width:'60dp',
height:'40dp',
text:cc
});
rowview.add(labeltt);
rowview.add(labelcc);
rowview.add(btn);
data1.push(rowview);
我没有尝试过这段代码,所以应该有一些对齐问题。我希望这会对你有所帮助