Alexander_Kolmachikhin
@Alexander_Kolmachikhin
Android Programming

Как соеденить/наложить изображения или «надеть» на нарисованного героя «доспехи»?

Моя задача, если выдернуть ее из общего контекста идеи:

Создаётся герой, в бд записываются все нужные поля.
Там, где выводится информация о герое, выводится и его картинка. Если герой имеет доспехи или оружие в бд, например, то и тут они отображаются.

Вопрос вот в чем, как мне "вложить" в руку героя меч или "надеть" на него доспехи? В голову приходит только такая идея: брать imageview героя, сверху ложить imageview меча и еще сверху imageview доспехов. Но это последний способ, которым я хотел бы решать эту проблему.

Есть у кого-нибудь идеи, как это сделать грамотно?
  • Вопрос задан
  • 110 просмотров
Решения вопроса 1
Создать 1 вью.
Переопределить onDraw и канвасом отрисовать столько битмапов, сколько вам надо.

ПсевдоКот.
@Override
public void onDraw(Canvas canvas) {

        Bitmap image = BitmapFactory.decodeResource(getResources(),R.drawable.body);
        canvas.drawBitmap(image, 0, 0, paint);

        // if weapon exist
        Bitmap image2 = BitmapFactory.decodeResource(getResources(),R.drawable.weapon);
        canvas.drawBitmap(image2, 0, 0, paint);

        // if armor exist
        Bitmap image3 = BitmapFactory.decodeResource(getResources(),R.drawable.armor);
        canvas.drawBitmap(image3, 0, 0, paint);
}
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
GavriKos
@GavriKos
Использовать графические библиотеки или игровые движки, а не пытаться съесть кактус с imageview.

P.S. что за мода пошла... Одни на юнити херачат то что на нейтиве в 3 строчки пишется, другие вот наоборот...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы