0

チタン テーブルビュー (ビデオ ギャラリーのようなもの) でいくつかのビデオ プレーヤーを作成しようとしていますが、ループにビデオ プレーヤーを追加していると、ループ ビデオの最後にしか追加されません。

yGrid = 2、xGrid = 3、6.mp4 のみを追加したとします。

for (var y = 0; y < yGrid; y++) {
    var thisRow = Ti.UI.createTableViewRow({
        className : "grid",
        layout : "horizontal",
        height : cellHeight + (2 * ySpacer),
        backgroundColor : '#cfffffff',
        selectionStyle: 'NONE',
        backgroundImage : '/images/backg2.png'
    });

    var thisPlayer = [];


    for (var x = 0; x < xGrid; x++) {           
         thisPlayer[x] = Titanium.Media.createVideoPlayer({
            objName : "video-view",
            objIndex : cellIndex.toString(),
            left : ySpacer,
            height : cellHeight,
            width : cellWidth,
            url: '/video/'+cellIndex.toString()+'.mp4',
            mediaControlStyle : Titanium.Media.VIDEO_CONTROL_DEFAULT,
            scalingMode : Titanium.Media.VIDEO_SCALING_MODE_SIZE,
            zIndex : 10,
            autoplay : false
        }); 

        thisRow.add(thisPlayer[x]);
        cellIndex++;
    }
    tableData.push(thisRow);
}
var tableview = Ti.UI.createTableView({
    left : 0,
    top : App.geometry.menuHeight + App.geometry.lineHeight+5,
    bottom : App.geometry.menuHeight + App.geometry.lineHeight,
    width : '100%',
    backgroundImage : '/images/backg2.png',
    data : tableData
});
view.add(tableview);

問題はどこにありますか?

4

1 に答える 1

0

最後に、問題は、IOS が一度に複数のビデオプレーヤーをサポートしていないためです。私はこのように解決しました

for (var x = 0; x < xGrid; x++) {           
         thisPlayer[x] = Ti.UI.createWebView({
            objName : "video-view",
            objIndex : cellIndex.toString(),
            left : ySpacer,
            height : cellHeight,
            width : cellWidth,
        }); 
        thisPlayer[x].setHtml('<div><video width="100%" height="94%" controls><source src="./video/'+cellIndex.toString()+'.mp4" type="video/mp4"></video></div>');

        thisRow.add(thisPlayer[x]);
        cellIndex++;
    }
于 2013-08-29T18:19:28.300 に答える