繁体   English   中英

在Android上更改壁纸

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM