Как правильно маскировать Bitmap с помощью LinearGradient shader?

Я пытаюсь замаскировать Bitmap с градиентом альфы внизу. Размер градиента фиксирован и не зависит от размера растрового изображения. Но он рисует неверно: нижний градиент сверху, чем верхний. Что не так?

Введите описание изображения здесь

Существует пример кода:

final int GRADIENT_HEIGHT = 32; public Bitmap addGradient(Bitmap src) { int w = src.getWidth(); int h = src.getHeight(); Bitmap overlay = Bitmap.createBitmap(w, h, Bitmap.Config.ARGB_8888); Canvas canvas = new Canvas(overlay); canvas.drawBitmap(src, 0, 0, null); Paint paint = new Paint(); LinearGradient shader = new LinearGradient(0, 0, 0, GRADIENT_HEIGHT, 0xFFFFFFFF, 0x00FFFFFF, TileMode.REPEAT); paint.setShader(shader); paint.setXfermode(new PorterDuffXfermode(Mode.DST_IN)); canvas.drawRect(0, h - GRADIENT_HEIGHT, w, h, paint); return overlay; } 

Благодаря!

Измените свой LinearGradient на это:

  LinearGradient shader = new LinearGradient(0, h - GRADIENT_HEIGHT, 0, h, 0xFFFFFFFF, 0x00FFFFFF, Shader.TileMode.CLAMP); 
Intereting Posts
Почему Android требует, чтобы имя пакета имело как минимум два идентификатора? Котлин и Даггер2 Выпадающие меню HTML Select не работают в веб-обозревателе Android Отладка javascript на планшетах / телефонах Android? Зачем использовать putFloat (String key, float value), putInt (String key, int value) вместо перегрузки put (…) Поиск местоположения на картах Google без предоставления его геокоординат Отображение сообщения в iOS, которое имеет ту же функциональность, что и Toast на Android Google GCM – Не получать push-уведомления в android Lollipop База данных Sqlite, обновляющая строку android Обновлен Android ADT, теперь возникают ошибки Как определить, подписан ли пользователь Firebase с использованием аутентификации facebook Android: При каких обстоятельствах будет вызываться диалог, вызывающий onPause ()? Android: возвышение не работает в превью L Простой пример прошивки телефона не работает в эмуляторе Android Как настроить Android SDK для Titanium в Mac OS Lion?