Android设置壁纸与URI

时间:2011-09-05 10:25:33

标签: android wallpaper

我有一个来自mediastore的URI指向图像。我想用这个URI设置壁纸。我尝试使用BitmapFactory.decodeFile,但问题是它的内存是否耗尽。

我还有其他办法吗?

感谢

1 个答案:

答案 0 :(得分:1)

这个问题有点老了,但嘿嘿......

您可以使用以下代码解决此问题。但是,如果您将图像设置得非常小,然后将其拉伸以适应非常大的图像,那么您将会失去质量。话虽这么说,如果图像太大,你甚至无法加载它,你只是想让它充当你的壁纸,我想你会好起来的。

            // use if resizing the image
            BitmapFactory.Options options = new BitmapFactory.Options();

            // set to true to set image bounds
            options.inJustDecodeBounds = true; 

            // set to 2, 4, 6, etc to create a progressively smaller image
            options.inSampleSize = 2; 

            // set to false to prepare image for decoding
            options.inJustDecodeBounds = false; 

            bitmap = BitmapFactory.decodeStream(is, null, options);