android - 后退、暂停和转发 GIF

标签 android android-glide

我目前使用Glide库播放GIF如下。

Glide.with(this).load(gifUrl).into(ImageView);

这很好用,但我希望用户可以选择倒回、暂停和转发 GIF。我在想只是倒带/快进 10 秒的按钮和另一个暂停按钮。我将无法使用 mp4 视频,因此无法使用视频播放库,因为我使用的文件是 GIF。有什么方法可以在我仍然使用 Glide 的同时做到这一点,还是我必须使用另一个库?

非常感谢任何帮助。

最佳答案

您最好的选择可能是使用第三方库将您的 gif 转换为 mp4 视频,然后使用 native android 函数来转发、暂停和倒回该 mp4。

我确定有一个 API 可以执行此操作,您只需要看一下即可。也许试试看这里 https://android-arsenal.com/tag/193 .前进和后退 gif 会困难得多,因此您需要先转换。

如何创建“前进 10 秒”按钮的示例。 seekForwardTime 将为 10,000 毫秒。

 btnForward.setOnLongClickListener(new OnLongClickListener() {

        @Override
        public boolean onLongClick(View v) {
            // get current song position
            int currentPosition = mp.getCurrentPosition();
            // check if seekForward time is lesser than song duration
            if (currentPosition + seekForwardTime <= mp.getDuration()) {
                // forward song
                mp.seekTo(currentPosition + seekForwardTime);
            } else {
                // forward to end position
                mp.seekTo(mp.getDuration());
            }
            return false;
        }
    });

关于android - 后退、暂停和转发 GIF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47500679/

相关文章:

android - 可绘制的图像但仍然出现错误

java - Android - 使用Glide库预加载图片时如何取消图片请求?

android - 如何检查 ImageView 是否在 android studio 中完成加载和图像

Android SQLite 删除表实际上并没有删除行

android - 布局编辑器中的 ListFragment 或 ListView 预览

java - AsyncTask 中的循环器

android - Glide 库显示模糊图像的时间太长

java - 如何使用 glide 库使用 SQLite 在 gridview 中显示图像?

android - 通过 Glide 加载占位符图像后图像出现拉伸(stretch)?

android - 资源 ID 在 Android Gradle 插件 5.0 版中将是非最终的,请避免在 switch case 语句中使用它们