Опитвам се да задам един фон bitmap и след това да мога да рисувам върху него, така че по-късно ще мога да запазя растерната карта в галерията.
@Override
protected void onSizeChanged(int w, int h, int oldw, int oldh) {
paint.setStrokeWidth(changeWidth());
if (bitmap == null)
{
bitmap = Bitmap.createBitmap(w, h, Bitmap.Config.ARGB_4444);
}
//Boolean parameters allowing to change bg in case preference changed
if(prefs_grid)
{
bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.grid_view);
}
if(prefs_ruler)
{
bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.rulers_view);
}
canvas = new Canvas();
try {
canvas.setBitmap(bitmap);
} catch (Exception e) {
e.printStackTrace();
Log.w("setBitmap", "unable to set Bitmap");
}
super.onSizeChanged(w, h, oldw, oldh);
}
Това е мястото, където променям растерната карта. Бързата карта се променя, но линията: canvas.setBitmap (растерни); не работи и не мога да го разбера защо? Може ли някой да ми се консултира по този въпрос.
Благодаря,
Отговори:
0 за отговор № 1опитайте да го добавите
canvas = this.surfaceHolder.lockCanvas();
// опитайте да заключите платното за редактиране на изключителни пиксели
// на повърхността