Android 壁纸不适合。 (自动溢出和裁剪。)
Android Wallpaper Doesn't fit. (Overflows and crops automatically.)
我的墙纸应用程序的墙纸不适合所有设备。图片为 1080x1920 像素,在某些设备中,壁纸会溢出并自动裁剪。
这是我用来设置壁纸的代码;
img.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
WallpaperManager wallmgr = WallpaperManager.getInstance(getApplicationContext());
try{
wallmgr.setResource(+ R.drawable.a1);
} catch (IOException e){
e.printStackTrace();
}
}
});
我可以做些什么来适应图像?
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
int height = metrics.heightPixels;
int width = metrics.widthPixels;
Bitmap tempbitMap = BitmapFactory.decodeResource(getResources(), R.drawable.img);
Bitmap bitmap = Bitmap.createScaledBitmap(tempbitMap,width,height, true);
WallpaperManager wallpaperManager = WallpaperManager.getInstance(MainActivity.this);
wallpaperManager.setWallpaperOffsetSteps(1, 1);
wallpaperManager.suggestDesiredDimensions(width, height);
try {
wallpaperManager.setBitmap(bitmap);
} catch (IOException e) {
e.printStackTrace();
}
如果我没记错的话,这个问题很久以前就已经回答了?
android wallpapermanager fit screen
我的墙纸应用程序的墙纸不适合所有设备。图片为 1080x1920 像素,在某些设备中,壁纸会溢出并自动裁剪。
这是我用来设置壁纸的代码;
img.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
WallpaperManager wallmgr = WallpaperManager.getInstance(getApplicationContext());
try{
wallmgr.setResource(+ R.drawable.a1);
} catch (IOException e){
e.printStackTrace();
}
}
});
我可以做些什么来适应图像?
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
int height = metrics.heightPixels;
int width = metrics.widthPixels;
Bitmap tempbitMap = BitmapFactory.decodeResource(getResources(), R.drawable.img);
Bitmap bitmap = Bitmap.createScaledBitmap(tempbitMap,width,height, true);
WallpaperManager wallpaperManager = WallpaperManager.getInstance(MainActivity.this);
wallpaperManager.setWallpaperOffsetSteps(1, 1);
wallpaperManager.suggestDesiredDimensions(width, height);
try {
wallpaperManager.setBitmap(bitmap);
} catch (IOException e) {
e.printStackTrace();
}
如果我没记错的话,这个问题很久以前就已经回答了?
android wallpapermanager fit screen