所以我正在创建一个Android游戏,对于背景我正在使用Photoshop中完成的渐变。现在我知道你可以通过android中的代码创建一个渐变,但我更喜欢这样做。但是,图像假设看起来像这样:
但最终在手机上看起来像这样:
为什么质量会降低?
答案 0 :(得分:1)
我认为你的移动设备显示能力就是问题。
市场上有许多显示器具有许多显示分辨率和许多ppi(每英寸像素数)的值。
请考虑以上事实。
答案 1 :(得分:0)
我遇到了同样的问题。我读过的是,如果你添加一些可能会修复它的透明度,就像你得到图像并使用photoshop或其他东西添加一个不显眼的不透明度。然而,这个解决方案对我不起作用。
我尝试的另一个解决方案是在获取位图时使用位图选项,将inDither设置为true,如下所示:
BitmapFactory.Options options = new BitmapFactory.Options();
options.inPreferredConfig = Bitmap.Config.RGB_565;
options.inDither = true;
Bitmap bitmap = BitmapFactory.decodeStream(inputStream, null, options);
当然你不需要使用RGB_565,但那是什么让我获得了最好的(虽然不是理想的)结果。如果您也使用decodeResource,那么这也是有效的,而不是您放入资源中的流。