0

私は flash/AS2 が初めてで、flash AS2.0 で YouTube ビデオ ギャラリーを作成しようとしていました。「 video_mc 」という名前のmovieClipを1つ作成し、内部に子クリップを作成して、ボタンのリリース時にYouTubeムービーをロードします(「video_btn01」および「video_btn02」)。これが私のコードです。

var vidId:String = "";

function createMovieInstance(mid){
    var mclip:MovieClip = video_mc.createEmptyMovieClip("v", _root.getNextHighestDepth());
    mclip.loadMovie("http://www.youtube.com/v/"+mid+"&autoplay=0");
}

video_btn01.onRelease = function(){
    vidId = "iRaR7O1wNGg";
    createMovieInstance(vidId);
}
video_btn02.onRelease = function(){
    vidId = "h22OsQONU3M";
    createMovieInstance(vidId);
}

ムービーは適切にロードされていますが、最初にロードされたムービーはバックグラウンドで再生され、次のムービーがロードされます。これは、最初のムービーが別の movieClip インスタンスで再生されている間に、別の clid ムービー クリップを作成して 2 番目のムービーをロードしているためです。そのため、実行中の movieClip を見つけてアンロードする必要があります。誰かがこの問題を克服する方法を教えてくれれば幸いです。乾杯!..

4

1 に答える 1

0

これを試して、私に知らせてください。

 function createMovieInstance(mid){
    if(video_mc.v != undefined){
        video_mc.v.unloadMovie();
        //If the Depth is above or below the limit this will help you
        video_mc.v.swapDepths(0);
        video_mc.v.removeMovieClip();
    }
    var mclip:MovieClip = video_mc.createEmptyMovieClip("v", _root.getNextHighestDepth());
    mclip.loadMovie("http://www.youtube.com/v/"+mid+"&autoplay=0");
}
于 2012-07-23T11:58:14.387 に答える