gpt4 book ai didi

android - 避免墙纸在某些设备上被拉伸(stretch)

转载 作者:行者123 更新时间:2023-12-05 07:47:46 24 4
gpt4 key购买 nike

你好,我是 Android Dev 的新手。并自己学习。我正在学习设置主屏幕壁纸,但我一直面临壁纸在某些设备(并非全部)上拉伸(stretch)的问题。

这个问题很奇怪,当我从我的应用程序设置墙纸,关闭我的应用程序并回到主屏幕时,墙纸没有处于拉伸(stretch)状态,但突然在一眨眼或一秒钟内它在屏幕上拉伸(stretch)或者你可以说它会自行扩展,将近一半的图像显示在屏幕上!


我正在尝试的代码

 DisplayMetrics metrics = new DisplayMetrics();
context.getWindowManager().getDefaultDisplay().getMetrics(metrics);

int height = metrics.heightPixels;

int width = metrics.widthPixels;

Bitmap originalBitmap = BitmapFactory.decodeResource
(context.getResources(), id);

Bitmap bitmap = Bitmap.createScaledBitmap(originalBitmap, width, height, true);

WallpaperManager wallpaperManager = WallpaperManager.getInstance(context);
wallpaperManager.setWallpaperOffsetSteps(1, 1);
wallpaperManager.suggestDesiredDimensions(width, height);
wallpaperManager.setBitmap(bitmap);
Toast.makeText(MainActivity.mainActivity, "Wallpaper set", Toast.LENGTH_SHORT).show();
Log.e("xxx",""+width+" & "+height);

我在某些设备上遇到了这个问题,而不是在所有设备上!

任何帮助将不胜感激,提前致谢

最佳答案

您是否尝试过在位图的宽高计算中包含 dp(每英寸点数)?

关于android - 避免墙纸在某些设备上被拉伸(stretch),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39299232/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com