1

有人知道如何在android上手动创建视频播放列表吗?怎么玩?我想播放该播放列表中的视频,而不是来自 SD 卡/内部电话的视频。

以及如何从列表视图播放视频?列表视图代码:

int[] indexVideo = {R.raw.saya,R.raw.anda,R.raw.aku,R.raw.dia,R.raw.kita,R.raw.lupa,R.raw.makan,R.raw.bahagia, R.raw.bisa, R.raw.belanja,R.raw.pergi,R.raw.pulang,R.raw.minum,R.raw.duduk};

如何在列表视图中播放所有这些视频?

谢谢你

4

3 回答 3

0

视频是否在 SD 卡上无关紧要。如果视频*在 SD 卡上,您将如何显示它们?如果您有该问题的答案,那么只需执行完全相同的操作,除了您的 apk 常驻视频。

参考这个问题来看看如何显示视频的缩略图: 如何显示视频缩略图?

然后播放用户选择的视频。

于 2013-09-18T06:57:26.340 回答
0

正如您在之前的评论中所说,您不应该“制作很多新的媒体播放器”。你应该有两个,一个正在播放,另一个是它可以提前准备。

我提供以下内容,但不保证它会起作用(因为我没有测试过),但它应该让你知道如何继续:

private int[] mPlaylist = new int[] { /* Your raw resource IDs */ };

private MediaPlayer createMediaPlayer(final Context context, final int index) {
    if (context == null || index < 0 || index >= mPlaylist.length) return null;
    MediaPlayer newPlayer = MediaPlayer.create(context, mPlaylist[index]);
    newPlayer.setOnInfoListener(new MediaPlayer.OnInfoListener() {
        @Override
        public void onInfo(MediaPlayer mp, int what, int extra) {
            if (what == MEDIA_INFO_VIDEO_RENDERING_START)
                mp.setNextMediaPlayer(createMediaPlayer(context, index + 1));
        }
    });
    newPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
        @Override
        public void onCompletion(MediaPlayer mp) {
            mp.release();
        }
    });
    return newPlayer;
}

然后在适当的地方(比如onStart)你需要调用createMediaPlayer(yourContext, 0);.

于 2013-09-18T08:09:43.210 回答
0

您是否查看过 Android 开发人员的媒体播放器页面。你可以使用

create(Context context, int resid)

为您的资源创建 MediaPlayer 的方法。和

start()

方法来启动你的第一个媒体,之后你也可以使用

setNextMediaPlayer(MediaPlayer next)

通过为它创建新的 MediaPlayer 来播放你的下一个资源

于 2013-09-18T06:58:37.897 回答