Я новичок в Android dev, и мне сложно делать что-то, что кажется мне очевидным: рисовать маленькие изображения поверх большего изображения.
Скажем, что у меня есть изображение 500x500, и я хочу рисовать значки в разных местах. Иконки - это файлы png, которые я загружаю с помощью:
Растровое изображение img = BitmapFactory.decodeResource(GetResources(), R.drawable.idIcon1)
Мое "фоновое изображение" - это LayerDrawable.
Затем я полностью потерял... Нужно ли создавать холст? Как рисовать на моем "фоновом изображении" мои значки на разных позициях?
используйте это: ссылка
int positionLeft=0;
int positionTop=0;
Bitmap newBitmap =Bitmap.createBitmap(backgroundBitmap.getWidth(),bitmap.getHeight(),Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(newBitmap);
canvas.drawBitmap(backgroundBitmap, positionLeft, positionTop,null);
positionLeft=100;
positionTop=100;
canvas.drawBitmap(iconBitmap,positionLeft,positionTop,null);
imageView.setImageBitmap(newBitmap);
Вы делаете простые вещи сложными. Просто используйте макет с атрибутом android:background
, а затем динамически добавьте ImageView
с необходимыми растровыми изображениями внутри.