Titanium 在 tableview 中显示表中的数据
Posted
技术标签:
【中文标题】Titanium 在 tableview 中显示表中的数据【英文标题】:Titanium display the datas from the table in tableview 【发布时间】:2015-01-07 15:13:45 【问题描述】:我是钛的新手..我创建了一个 tableview,我想在创建的标签和 tableview 表单中显示数据库中的数据,但无法实现..
代码:
var triplistview = Titanium.UI.createTableView(
backgroundColor : 'white',
width : Titanium.UI.FILL,
height : Ti.UI.SIZE,
layout : 'horizontal',
padding : '10dp',
separatorColor : theme_background
// margin:'10dp',
);
scrollView.add(triplistview);
var data = [];
var db = Titanium.Database.open('trip');
db.execute('CREATE TABLE IF NOT EXISTS newtrip (id INTEGER PRIMARY KEY AUTOINCREMENT, triplabel TEXT,tripname TEXT,destination TEXT,fromdate TEXT,todate TEXT)');
while (resultrows.isValidRow())
var row = Ti.UI.createTableViewRow(
height : Ti.UI.SIZE,
rightImage : '/images/right1.png',
layout : 'absolute',
//title : '' + 'Destination' + '' + '' + resultrows.fieldByName('destination') + '' + 'From Date:' + '' + '' + resultrows.fieldByName('fromdate') + '' + 'To Date:' + '' + resultrows.fieldByName('todate')
);
row.add(tripnamelabel);
row.add(buttonedit);
row.add(buttondelete);
row.add(fromdate);
row.add(dash);
row.add(todate);
triplistview.add(row);
row.className = 'control';
data.push(row);
resultrows.next();
triplistview.setData(data);
resultrows.close();
db.close();
这些是我创建的标签
var tripnamelabel = Ti.UI.createLabel(
text:resultrows.fieldByName('destination'),
color : theme_style,
font :
fontSize : '15dp',
fontWeight : 'bold'
,
top : '10dp',
left : '10dp',
);
var buttonedit = Ti.UI.createButton(
backgroundImage : '/images/list_edit.png',
top : '20dp',
width : wb,
height : hb,
right : '20dp'
);
var buttondelete = Ti.UI.createButton(
backgroundImage : '/images/delete_ic.png',
top : '20dp',
width : wb,
height : hb,
right : '60dp'
);
var fromdate = Ti.UI.createLabel(
text:resultrows.fieldByName('fromdate')
color : 'Black',
font :
fontSize : '13dp',
fontWeight : 'bold'
,
top : '40dp',
left : '10dp',
right : '10dp',
bottom : '20dp'
);
var dash = Ti.UI.createLabel(
text : '-',
color : 'Black',
font :
fontSize : '15dp',
fontWeight : 'bold'
,
top : '40dp',
left : '80dp',
right : '10dp',
bottom : '20dp'
);
var todate = Ti.UI.createLabel(
text:resultrows.fieldByName('todate')
color : 'Black',
font :
fontSize : '13dp',
fontWeight : 'bold'
,
top : '40dp',
left : '90dp',
right : '10dp',
bottom : '20dp'
);
请帮助我,因为我被困在这个问题上超过一天,我收到了这个错误
[ERROR] 应用程序安装程序异常进程终止。进程退出值为 1
【问题讨论】:
我认为你提到的错误是安装 apk realted 而不是代码 它说在 myfilename.js 中解析代码失败.. 能否在代码上方提及文件名 这些在同一个文件名apppage1.js中 如果我删除这个文本:resultrows.fieldByName('destination') 而如果我给出文本:'hi'..这个 tableview 正在显示 【参考方案1】:我可以看到的一个问题是您没有为结果行分配任何内容。
没有针对数据库的查询,例如
var resultrows = db.execute('SELECT * FROM newtrip');
while (resultrows.isValidRow()) ...
我不确定你是如何进入 while 循环来显示你的文本的:正如你所说的'hi'。
错误似乎与您应该看到的不符。想知道是否删除了太多代码来帮助这个示例。
【讨论】:
对不起!我已经为结果行分配了值,忘记将其粘贴在这里..它是相同的 SELECT 查询 你需要给出一个更完整的例子。您不能复制和粘贴您认为重要的代码。您没有输入的代码可能是错误的原因。请更新您原始帖子中的代码。以上是关于Titanium 在 tableview 中显示表中的数据的主要内容,如果未能解决你的问题,请参考以下文章
ImageView 使用存储在 Titanium.Filesystem.applicationDataDirectory 的图像显示占位符,而不是图像
IOS:通过 tableView 导航并在下一个视图中显示表视图数据