我正在制作一个相当简单的应用程序,该应用程序显示一个表格,其中每行包含一个英文单词和相应的波兰语单词。当按下一行时,它应播放所表达单词的声音片段。但是,即使我尝试使用Google提供的所有功能进行故障排除,我也无法使其正常运行。如果有人能指出这个缺陷,我将不胜感激......
var win = Titanium.UI.currentWindow;
var data =[];
var CustomData = [
{ file:'001', english:'Do you?', polish:'Czy masz?', fav:false },
{ file:'002', english:'How long?', polish:'Jak d?ugo?', fav:false },
{ file:'003', english:'Is it?', polish:'Czy?', fav:false },
];
var section = Ti.UI.createTableViewSection();
data.push(section);
for (var i=0; i<CustomData.length; i++) {
var row = Ti.UI.createTableViewRow({layout : 'vertical', height:'auto'});
var item = Ti.UI.createLabel({
color:'#000',
text:CustomData[i].english,
font:{fontSize:12, fontWeight:'bold'},
top:3,
left:10,
right:30,
height:'auto'
});
row.add(item);
var cost = Ti.UI.createLabel({
color:'#444',
text:CustomData[i].polish,
font:{fontSize:12},
top:0,
left:15,
right:30,
bottom:5,
height:'auto'
});
row.add(cost);
row.filter = CustomData[i].english;
section.add(row);
};
var tableview = Titanium.UI.createTableView({
data:data, search:search, searchHidden:false, filterAttribute: 'filter' });
win.add(tableview);
tableview.addEventListener('click', function(e)
{
var sound = Titanium.Media.createSound();
sound.url = '../sound/' + e.rowData.file + '.mp3';
sound.play();
if (e.rowData.test)
{
var win = Titanium.UI.createWindow({
url:e.rowData.test,
title:e.rowData.title
});
Titanium.UI.currentTab.open(win,{animated:true});
}
});
答案 0 :(得分:0)
只是在黑暗中拍摄,但您确定可以在创建声音对象后设置URL吗?你试过了吗?
Titanium.Media.createSound({url:'../sound/' + e.rowData.file + '.mp3'});
除此之外,您确定从您认为的位置评估相对URL吗?也许可以尝试使用绝对URL来确保。