在android动态壁纸中使用.gif文件

时间:2012-03-09 05:00:11

标签: android live-wallpaper animated-gif

我的问题是关于这篇文章

Is it possible to set an animated gif file as live wallpaper in android?

这篇文章中给出的方法似乎不起作用。当我将动画.gif文件放在/ res / raw文件夹中时,会出现一个错误,指出我的文件无法解析或不是字段。有什么东西我应该知道原始文件夹中的资源或还有一些其他问题。以下是代码。

BelleEngine()抛出IOException {

        InputStream is = getResources().openRawResource(R.raw.ballerina);
        if (is != null) {
            try {
                mBelle = Movie.decodeStream(is);
                mBelleDuration = mBelle.duration();
            } finally {
                is.close();
            }
        } else {
            throw new IOException("Unable to open R.raw.belle");
        }

提前感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

我尝试过它适用于我的例子。此外,我尝试使用不同的.gif图像,似乎他们没有任何问题。我的代码是。 {

 /**
     * Method to init suitable wallpaper according to time.
     */
    private void initWallpaperAccordingtoTime(InputStream inputStream) {

        if (inputStream != null) {
            try {
                wallpaperGifStream = Movie.decodeStream(inputStream);
                if (wallpaperGifStream != null) {
                    duration = wallpaperGifStream.duration();
                }
            } catch (Exception e) {
                e.printStackTrace();
            } finally {
                try {
                    inputStream.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }

    }

调用此方法如下。

 initWallpaperAccordingtoTime(getResources().openRawResource(
             R.raw.android_apple));

}