Мое приложение - базовое приложение для рисования. Пользователь может рисовать на холсте и сохранять изображение в формате PNG. Он может загружать ранее нарисованные изображения и редактировать их.
Я смог сделать первую часть. пользователь может нарисовать и сохранить изображение на SD-карте. У меня проблемы с загрузкой сохраненного файла png на холст и рисованием на нем.
вот метод run в моем классе SurfaceView.
public void run() {
Canvas canvas = null;
while (running) {
try {
canvas = holder.lockCanvas(null);
synchronized (holder) {
if(mBitmap == null){
mBitmap = Bitmap.createBitmap (1, 1, Bitmap.Config.ARGB_8888);;
}
final Canvas c = new Canvas (mBitmap);
c.drawColor(Color.WHITE);
//pad.onDraw(canvas);
Paint p = new Paint();
p.setColor(Color.GRAY);
for(double x = 0.5;x < c.getWidth();x += 30) {
c.drawLine((float)x, 0, (float)x, c.getHeight(), p);
}
for(double y= 0.5;y < c.getHeight();y += 30) {
c.drawLine(0, (float)y, c.getWidth(), (float)y, p);
}
pad.onDraw(c);
canvas.drawBitmap (mBitmap, 0, 0, null);
}
} finally {
if (canvas != null) {
holder.unlockCanvasAndPost(canvas);
}
}
}
}
Я попытался загрузить png в mBitmap, но это не сработало.
Любая помощь приветствуется.
спасибо!