Android-растровый градиент в Android 2.1 - PullRequest
0 голосов
/ 08 марта 2011

Есть ли способ поместить градиент к растровому объекту в Android 2.1? Изображение должно выглядеть так:

image with gradient

Мне нужен градиент только поверх растрового изображения. DrawableGradient или LinearGradient только с Android 2.2, поэтому эти объекты мне совсем не помогают. Спасибо

1 Ответ

3 голосов
/ 08 марта 2011

Вам нужно это из XML или из кода? В коде попробуйте это:

    /* Create a 200 x 200 bitmap and fill it with black. */
    Bitmap b = Bitmap.createBitmap(200, 200, Config.ARGB_8888);
    Canvas c = new Canvas(b);
    c.drawColor(Color.BLACK);

    /* Create your gradient. */
    LinearGradient grad = new LinearGradient(0, 0, 0, 50, Color.GRAY, Color.BLACK, TileMode.CLAMP);

    /* Draw your gradient to the top of your bitmap. */
    Paint p = new Paint();
    p.setStyle(Style.FILL);
    p.setShader(grad);
    c.drawRect(0, 0, 200, 50, p);

В XML просто создайте два отдельных представления в вертикальной линейной компоновке. Вид сверху должен иметь градиентный фон для рисования, снизу, более высокий вид должен иметь сплошной фон.

...