0

現在、ビットマップのトリミング機能を実行しています。ビットマップ上の 2 つのポイントをランダムにタッチし、2 つのタッチ ポイントの調整に関する新しいビットマップを作成する ontouch イベントを使用して、ビットマップをトリミングできます。

ただし、ビットマップに配置して関心領域をトリミングできる調整可能な四角形を持つソリューションはありますか?

上記の私のコードは次のとおりです。

    image_view.setOnTouchListener(new View.OnTouchListener() {
        public boolean onTouch(View v, MotionEvent event) {
            if (event.getAction() == MotionEvent.ACTION_DOWN) {
                if (x1 == -1 && y1 == -1 && x2 == -1 && y2 == -1) {
                    x1 = (int) event.getX();
                    y1 = (int) event.getY();
                } else if (x1 != -1 && y1 != -1 && x2 == -1 && y2 == -1) {
                    x2 = (int) event.getX();
                    y2 = (int) event.getY();

                    change_to_bitmap_from_array = Bitmap.createBitmap(
                            change_to_bitmap_from_array, x1, y1, x2, y2);

                    image_view.setImageBitmap(change_to_bitmap_from_array);
                    // done.setEnabled(true);
                    x1 = -1;
                    y1 = -1;
                    x2 = -1;
                    y2 = -1;

                }
            }

            return false;
        }

    });
4

1 に答える 1

0

私が知っているように、あなたの問題に対する正式な解決策はありません。しかし、あなたは自分でそれを行うことができます.長方形には透明なViewを使用し、絶対座標ではRelativeLayoutを使用します; タッチ イベントのサイズと位置を制御する

于 2012-11-20T11:50:20.733 に答える