我要做的是,使用图片URI设置壁纸(无裁剪)
我是Android上的开发人员和普通开发人员。 互联网让我失望......提供设置壁纸的代码。
是开发资源网站说
public void setStream (InputStream data)
但我不明白,一些示例代码会对我有很大帮助。
答案 0 :(得分:11)
嗨,如果您有图像路径,可以使用此代码。
is = new FileInputStream(new File(imagePath));
bis = new BufferedInputStream(is);
Bitmap bitmap = BitmapFactory.decodeStream(bis);
Bitmap useThisBitmap = Bitmap.createScaledBitmap(
bitmap, parent.getWidth(), parent.getHeight(), true);
bitmap.recycle();
if(imagePath!=null){
System.out.println("Hi I am try to open Bit map");
wallpaperManager = WallpaperManager.getInstance(this);
wallpaperDrawable = wallpaperManager.getDrawable();
wallpaperManager.setBitmap(useThisBitmap);
如果您有图像URI,请使用此
wallpaperManager = WallpaperManager.getInstance(this);
wallpaperDrawable = wallpaperManager.getDrawable();
mImageView.setImageURI(imagepath);
如果有任何问题,请告诉我。
答案 1 :(得分:3)
如果您有图像URL,则可以使用流(抽象)打开它所代表的资源:
new URL("your.image.url.com").openStream()
。此方法调用将返回类型为InputStream
的对象,您可以将其作为参数传递给setStream()
方法。
如果您不想直接指定流,可以打开远程流,创建一个位图,然后使用WallpaperManager实例或执行context.setWallpaper(bitmap)
(不推荐使用)来设置位图作为壁纸。
有关参考,请查看this主题。