Android设置墙纸出错

Ruu*_*kis 5 java android resize bitmap wallpaper

所以很久以前我在开发墙纸更换器,并将其发布。一段时间后,我开始收到评论,墙纸的尺寸无法正确调整。我也尝试了不同大小的emus,它们是正确的。我正确地缩放了位图,等等。但是,Android倾向于以某种方式重新缩放墙纸!有办法避免这种情况吗?我的代码:

Display display = parent.getWindowManager().getDefaultDisplay(); 
                    int width = display.getWidth();
                    int height = display.getHeight();
                    Bitmap scaled = Bitmap.createScaledBitmap(wallpaper, width, height, true);
                WallpaperManager wm = WallpaperManager.getInstance(getContext());
                wm.setBitmap(scaled);
Run Code Online (Sandbox Code Playgroud)

我也一直在尝试其他方法,但似乎无济于事,即使我事后检查重新缩放的墙纸是否正确大小也是如此。:(有什么想法吗?

小智 0

我想您可以使用WallpaperManager.getDesiredMinimumWidth()WallpaperManager.getDesiredMinimumHeight()指定的尺寸(而不是显示尺寸)来调整壁纸的大小。这样,即使是自定义家庭应用程序设置的要求(例如设备制造商和/或服务提供商可能设置的要求)也将得到尊重,这意味着您的应用程序具有(大)更大的兼容性。