[英]changing wallpaper on android
我试图在Android上更改壁纸。 但它只显示图像的一部分。 但是,如果我锁定手机,则锁屏仅在应用程序运行时显示完美缩放的图像,但在退出时,锁屏显示的背景与背景相同吗?
救命!?
WallpaperManager wallpaperManager = WallpaperManager.getInstance(getApplicationContext());
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
int width = metrics.widthPixels;
int height = metrics.heightPixels;
Bitmap original = BitmapFactory.decodeResource(getResources(), R.drawable.day_cloudy);
Bitmap resized = Bitmap.createScaledBitmap(original, width, height, true);
try {
wallpaperManager.clear();
wallpaperManager.setWallpaperOffsetSteps(1, 1);
wallpaperManager.suggestDesiredDimensions(resized.getWidth(), resized.getHeight());
wallpaperManager.setBitmap(resized);
Toast.makeText(this, "Wallpaper Set", Toast.LENGTH_SHORT).show();
} catch (IOException e) {
e.printStackTrace();
}
你必须用
public void setStream (InputStream data) method:
InputStream ins = new URL("absolute/path/of/image").openStream();
WallpaperManager wpm = WallpaperManager.getInstance(context);
wpm.setStream(ins);
或者,如果您具有图片URI,请使用:
WallpaperManager wpm = WallpaperManager.getInstance(context);
wpm.setResource(Uri.of.image);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.