Android 如何有效地缩放图像和设置背景

Android 如何有效地缩放图像和设置背景,android,memory,bitmap,scale,android-relativelayout,Android,Memory,Bitmap,Scale,Android Relativelayout,我想开始一个新项目,我想知道如何非常有效地为我的活动(布局)设置背景 以下是我在onCreate方法中尝试的内容: String imageUri = "drawable://" + R.drawable.perfectwall; int width = getWindowManager().getDefaultDisplay().getWidth(); int height = getWindowManager().getDefaultDisplay().get

我想开始一个新项目,我想知道如何非常有效地为我的活动(布局)设置背景

以下是我在onCreate方法中尝试的内容:

String imageUri = "drawable://" + R.drawable.perfectwall;
        int width = getWindowManager().getDefaultDisplay().getWidth();
        int height = getWindowManager().getDefaultDisplay().getHeight();
        Bitmap reqBitmap = loadBitmap(imageUri, width, height);
        Drawable drawable = new BitmapDrawable(this.getResources(), reqBitmap);
        r.setBackground(drawable);
我还有一个问题,为什么这不起作用。。。当我在模拟器上启动应用程序时,它不会改变背景,尽管内存越来越高。使用的内存高达12MB。。它只是一个白色的屏幕,就像我没有设置背景一样


多谢各位

考虑使用像和这样的库。它们的构建正是为了满足您的需要:高效地将大型图像缩放并加载到ImageView中。我过去使用过这两种方法,并为它们提供了担保

如果我不想只看图片?例如,对于屏幕布局或ImageButton,它给了我以下错误:
错误:任务执行失败:app:mergeDebugResources'>crunch-Cruncher-background.png失败,请参阅日志
@xyz,因此只需使用
r.setBackgroundResource(r.drawable.perfectwall)