首先,当您加载位图时,请确保通过argb_8888的设置选项不会丢失任何图像质量:
Options options = new Options();
options.inScaled = false;
options.inPreferredConfig = Bitmap.Config.ARGB_8888;
Bitmap pic = BitmapFactory.decodeResource(getResources(), R.id.pic, options);
缩放位图时,打开过滤器:
pic = Bitmap.createScaledBitmap(pic, screenW, screenH, true);
然而,如果一个人过多地拖拉图像,它的质量就会降低.
当您使用油漆时,您可以提高质量,但在打开ditherig和过滤时会失去速度:
Paint paint = new Paint();
paint.setFlags(Paint.DITHER_FLAG);
paint.setFilterBitmap(true);
最后,整个活动窗口可以在argb_4444上设置,而不是在argb_8888(OS <2.3)上设置.如果你在setContentView之前检查这行,你可以使用它:
getWindow().setFormat(PixelFormat.RGBA_8888);