Как нарисовать линию, используя ontouchevent в изображении Bitmap в качестве фона в Android - PullRequest
1 голос
/ 24 февраля 2012

Как нарисовать линию, используя ontouchevent на изображении Растровое изображение в качестве фона в Android. Здесь я использую растровое изображение в качестве фонового изображения в Android. Но изображение не будет перекрываться, если я рисую линию.

Ответы [ 2 ]

2 голосов
/ 24 февраля 2012

это красивая ссылка, вы можете следовать этому для вашего решения:

Как нарисовать линию в Android

0 голосов
/ 24 февраля 2012

используйте что-то подобное в своем контакте

  /////declare variable/////
float downx = 0;
float downy = 0;
float upx = 0;
float upy = 0;
Canvas canvas;
Paint paint;

 ///////put this in on create//////

    imageView = (ImageView)findViewById(R.id.ImageView);

    bitmap = Bitmap.createBitmap(480,640,Bitmap.Config.ARGB_8888);

Display currentDisplay = getWindowManager().getDefaultDisplay();
            float dw = currentDisplay.getWidth();
            float dh = currentDisplay.getHeight();


            canvas = new Canvas(bitmap);
            paint = new Paint(Paint.ANTI_ALIAS_FLAG);
            paint.setStrokeWidth(6);
            paint.setStrokeMiter(2);
            paint.setStyle(Paint.Style.STROKE); 
            paint.setColor(Color.RED);
            imageView.setImageBitmap(bitmap);
            imageView.setOnTouchListener(this);
 /////bitmap = your bitmap you want to load as back ground/////
 /////your on touch method///////

    public boolean onTouch(View v, MotionEvent event) {


    int action = event.getAction();
    switch (action)
    {
    case MotionEvent.ACTION_DOWN:
    downx = event.getX();
    downy = event.getY();
    break;
    case MotionEvent.ACTION_MOVE:
        upx = event.getX();
        upy = event.getY();

        canvas.drawLine(downx, downy, upx, upy, paint);
        imageView.invalidate();
        downx = upx;
        downy = upy;
        break;
   case MotionEvent.ACTION_UP:
    upx = event.getX();
    upy = event.getY();

    canvas.drawLine(downx, downy, upx, upy, paint);
    imageView.invalidate();
   break;
    case MotionEvent.ACTION_CANCEL:
    break;
    default:
    break;
    }

    return true;


}

Я надеюсь, что вы получили свой ответ ..

...