android - AndroidでImageViewを介してレイヤーを描画する

android drawing layer undo redo

ImageViewコンポーネント上に表示される画像に異なる描画レイヤーを配置するにはどうすればよいですか?
基本的に、描画アプリケーションに元に戻す機能とやり直し機能を実装したいと考えています。

現在、画像の上にテキストまたは描画を配置できますが、元に戻す/やり直し機能を実行できません。これはいくつかのレイヤードマテリアルを維持することで可能になるのではないかと思います。

Plzが私を助けてくれます。

これは私の現在の描画コードです。

    try {

        image.buildDrawingCache();
        Bitmap bitmap = image.getDrawingCache();

        try

        {

            bitmap = getResizedBitmap(bitmap, image.getHeight(),
                    image.getWidth());

        } catch (OutOfMemoryError e) {
            Toast.makeText(getApplicationContext(), e.getMessage(), 1)
                    .show();
        }

        TextPaint tp = new TextPaint();
        tp.setColor(Color.GREEN);
        tp.setAntiAlias(true);
        tp.setTextSize(30);

        Canvas canvas = new Canvas(bitmap);
        canvas.drawText(input.getText().toString(), xPos, yPos, tp);
        image.setImageBitmap(bitmap);

        input.setText("");
        input.setVisibility(View.INVISIBLE);

    } catch (Exception e) {

        Toast.makeText(getApplicationContext(), e.getMessage(), 1).show();
    }


前もって感謝します...!!!
答え
別の方法でそれを行いました。
オリジナルのビットマップを作成し、いくつかのビットマップ変数に保存します。すべてのonDraw呼び出しで、元のビットマップでビットマップを開始し、それをキャンバスに渡します。次に、やりたいことを行います。
関連記事

android - ソースコード/ドライバーAndroid携帯電話の開放性

android - ギャラリーのためのヒョードルの遅延ロード

android - Zxingバーコードスキャナーコード

android - C2DMメッセージングは​​ローカルサーバーでは機能しますが、本番環境では機能しません(Google App Engine)

android - TTS出力を16または8kHzに設定します

javascript - Android-外部WebページにJavaScriptをロードして実行する

android - バックグラウンドスレッドでの重い計算

android - 全画面モードのIntent Android YouTube Playerアプリ

android - 異なるデータで同じアクティビティ(同じレイアウト)を呼び出す方法は?

android - Androidのカスタムギャラリービューに説明を追加する