Android Canvas - Белая доска - PullRequest
0 голосов
/ 12 июля 2011

Я пытаюсь создать холст в Android, где мы можем использовать его в качестве белой доски и рисовать на холсте.

Как только какая-то вещь была нарисована на холсте, я хочу сохранить холст, чтобы его можно было снова нарисовать на другом устройстве или получить позже, когда вы запустите приложение.Я не хочу хранить его как изображение.

Какое лучшее решение для хранения вещей на холсте?

enter image description here

Ответы [ 2 ]

1 голос
/ 13 июля 2011

При рисовании нарисуйте на холсте с растровым рисунком:

private Bitmap bitmap;
protected void onDraw(Canvas canvas) {
    bitmap = Bitmap.createBitmap(canvas.getWidth(), canvas.getHeight(), Config.RGB_565);
    Canvas bitmapCanvas = new Canvas(bitmap);
    // perform all drawing into bitmapCanvas
    canvas.drawBitmap(bitmap, 0, 0, null);
}

Затем вы можете сохранить свое растровое изображение, используя compress, и загрузить его, используя BitmapFactory.decodeFile или другие методы декодирования в классе BitmapFactory.

1 голос
/ 12 июля 2011

Я вижу две возможности помимо сохранения в виде изображения:

  1. Сохранить холст как объект в памяти телефона. Затем вы можете отправить этот файл на другое устройство или загрузить его после перезапуска.

  2. Сохраняйте нажатия клавиш каждый раз, когда пользователь касается экрана (и что-то должно быть нарисовано).

Проверьте, как сохранить файлы: http://developer.android.com/guide/topics/data/data-storage.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...