Пиксели растрового изображения при касании становятся прозрачными в Java-Android

У меня есть макет кадра с двумя перекрывающимися растровыми изображениями в виде изображений и на ощупь, только затронутые пиксели должны стать прозрачными. Но вместо этого все изображение становится прозрачным.

Я ссылался на аналогичную ссылку. Как сделать наложенное изображение прозрачным на ощупь в Android? Но это не помогло. Код для TouchEvent приведен ниже.

@Override
public boolean onTouchEvent(MotionEventevent){
startX = (int)event . getX();
startY = (int)event . getY();
switch (event . getAction())
    {
case MotionEvent . ACTION_DOWN:
    return true;
case MotionEvent . ACTION_MOVE:
    try
        {
        newOverlayBitmap = Bitmap . createBitmap(bmp . getWidth() , bmp . getHeight() , bmp . getConfig());
        for (inti = 0; i < bmp . getWidth(); i++)
            {
            for (intj = 0; j < bmp . getHeight(); j++)
                {
                if (i == startX && j == startY)
                    {
                    p = bmp . getPixel(i, j);
                    r = Color . red(p);
                    g = Color . green(p);
                    b = Color . blue(p);
                    alpha = Color . alpha(p);
                    alpha = 256 - alpha;//alpha=1
                    newOverlayBitmap . setPixel(i, j, Color . argb(alpha, r, g, b));
                    }
                }
            }

        img . setImageBitmap(newOverlayBitmap); //sets the changed overlay on the imageview
        }

    catch(Exceptione)
        {
        e . printStackTrace();
        }

    break;

case MotionEvent . ACTION_UP:
    break;

default:
    a = false;
    }

a = true;
super . onTouchEvent(event);
return a;
}

0 ответов

Другие вопросы по тегам