3

您好,我对 Android Dev 完全陌生。并自己学习。我正在学习设置主屏幕壁纸,但我一直面临一个问题,即我的壁纸在某些设备(不是全部)上被拉伸。

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


我正在尝试的代码

 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);

我在某些设备上而不是在所有设备上都面临这个问题!

任何帮助将不胜感激,在此先感谢

4

1 回答 1

0

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

于 2016-09-07T03:00:42.707 回答