スプラッシュ画面などで、グラデーションのかかった画像を一枚表示することがあります。
その際、グラデーションにマッハバンドと言われる縞が出ることがあり、グラデーションがきれいに見えない原因になります。
解決方法は簡単で、以下2ステップで解消できます。
1.スプラッシュのActivityでWindowのPixelFormatを指定する
@Override
public void onAttachedToWindow() {
super.onAttachedToWindow();
Window window = getWindow();
window.setFormat(PixelFormat.RGBA_8888);
}
2.画像を全解像度用に用意する
ldpi,mdpi,hdpi,xhdpiそれぞれに適切に拡大・縮小した画像を用意しておきます。これをやらないと、内部的に自動で拡大縮小されるので、その際にマッハバンドが発生します。
タグ: tips

HOMMA Teppei

