1

シンプルな OSMF プレーヤーを fex アプリケーションに埋め込もうとしています。しかし、それは機能していません。これが私のコードです:

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
           xmlns:s="library://ns.adobe.com/flex/spark" 
           xmlns:mx="library://ns.adobe.com/flex/mx" applicationComplete="init()" >
<fx:Script>
    <![CDATA[
        import org.osmf.media.MediaPlayerSprite;
        import org.osmf.media.URLResource;

        protected function init():void{

            var sprite:MediaPlayerSprite = new MediaPlayerSprite();

            sprite.resource= new URLResource("http://mediapm.edgesuite.net/strobe/content/test/AFaerysTale_sylviaApostol_640_500_short.flv");
            container.addChild(sprite);
        }

    ]]>
</fx:Script>

<mx:UIComponent id="container" width="640" height="360"/>

アプリケーションの実行時に白い画面が表示されます

ありがとう

4

1 に答える 1

2

これを行う方法の純粋なASは次のとおりです。

package  {
    import flash.display.Sprite;
    import org.osmf.media.MediaPlayerSprite;
    import org.osmf.media.URLResource;
    import org.osmf.media.DefaultMediaFactory;

    public class SimpleOSMFPlayer extends flash.display.Sprite {

    public static const PATH:String = "path/to/your/video.ext";

    public var playerSprite:MediaPlayerSprite;
    public var mediaFactory:DefaultMediaFactory;

        public function SimpleOSMFPlayer() {
            playerSprite = new MediaPlayerSprite();
            var resource:URLResource = new URLResource(PATH);
            mediaFactory = new DefaultMediaFactory();
            playerSprite.media = mediaFactory.createMediaElement(resource);
            addChild(playerSprite);
        }
    }       
}

flex の場合、最後の行のスプライトの代わりに、playerSprite を UIComponent コンテナーに追加します。

于 2012-06-22T10:03:16.277 に答える