您好我正在尝试在Android中执行壁纸应用程序。我无法将图像设置为设备屏幕大小。当我将其设置为壁纸时,图像也会失去质量。我也试过了一些stackoverflow的答案,但那些没有给我正确的结果。
这是我的代码:
public void onClick(View arg0) {
WallpaperManager myWallpaperManager= WallpaperManager.getInstance(getApplicationContext());
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
// get the height and width of screen
int height = metrics.heightPixels;
int width = metrics.widthPixels;
try {
Bitmap bitmap=((BitmapDrawable)imgflag.getDrawable()).getBitmap();
if(bitmap!=null)
myWallpaperManager.setBitmap(bitmap);
myWallpaperManager.suggestDesiredDimensions(width, height);
Toast.makeText(SingleItemView.this, "Wallpaper Set", Toast.LENGTH_SHORT).show();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
我在这里做错了什么?
答案 0 :(得分:0)
我想您尝试将缩略图(缩放)图像设置到屏幕上。
试试这段代码:
Bitmap bitmap = BitmapFactoty.decodeFile(path); // or decodeResource, decodeStream, etc
// depends on your source
而不是:
Bitmap bitmap=((BitmapDrawable)imgflag.getDrawable()).getBitmap();
此源必须包含大位图。