1

我有游戏(在 libgdx 中构建)我使用 GWT 将其转换为 html5

我需要在其中显示电影视频

有什么办法吗?我需要在跨平台上运行我的游戏

4

3 回答 3

2

使用小部件Video。它代表 HTML5 标签video。但是这个小部件可能无法在所有浏览器上正常工作。

您可以在文档中了解 GWT 支持的其他 HTML5 功能。

于 2012-08-21T20:19:33.207 回答
1

如果您使用此标签,请将此标签添加到您的 UIBinder (*.ui.xml),

<g:HTML ui:field="mediaContainer" styleName="mediaPlayer">
 <video autoplay="true" controls="controls" ui:field="mediaPlayer" height="100%" width="100%">
 </video>
</g:HTML>

现在添加以下代码到您的 UiBinder Java 部件中,或者如果您愿意的话,添加到 Presenter 中。我将此添加到我的演示者部分。希望你的 UiField 对象用正确的 Getter 和 Setter 声明

private Element videoSource = null;
private Element videoPoster = null;

// FOR PLAYING A VIDEO URL THAT THE USER ENTERS
    public void loadTool(String videoUrl) {
        if (videoSource != null) {
            videoSource.removeFromParent();
            videoPoster.removeFromParent();
        }
        videoSource = DOM.createElement("source");
        videoPoster = DOM.createElement("img");
        videoSource.setAttribute("src", videoUrl);
        videoPoster.setAttribute("src",
                MyContants.VIDEO_TEST_IMAGE);
        videoPoster.setAttribute("alt",
                MyContants.VIDEO_TEST_IMAGE_ALT);
        videoSource.getStyle().setVisibility(Visibility.VISIBLE);
        videoPoster.getStyle().setVisibility(Visibility.VISIBLE);
        videoWidget.getMediaPlayer().appendChild(videoSource);
        videoWidget.getMediaPlayer().appendChild(videoPoster);
        videoWidget.getMediaContainer().setVisible(true);
    }

希望这在某种程度上有所帮助

于 2012-08-21T20:29:20.267 回答
1

我用http://code.google.com/p/gwt-html5-video/downloads/list

显示视频

    VideoWidget videoPlayer = new VideoWidget(true, false, null);

    List<VideoSource> sources = new ArrayList<VideoSource>();
            sources.add(new VideoSource(video, VideoType.MP4));

        videoPlayer.setSources(sources);
        videoPlayer.setPixelSize(960, 640);
于 2012-08-22T09:18:24.950 回答