Подтвердить что ты не робот

Как создать ImageView в java-коде в существующем макете?

Я ищу простой способ узнать, сколько напитков у них было для калькулятора BAC.

Изображение приложения:

PICTURE OF THE APP

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

Итак, если бы я нажал кнопку добавления пива, под спиннером появлялась вытачка пива. Если я снова нажму кнопку "добавить пиво", я хочу, чтобы у ДВУХ ДВУХ ЛИСТОВ пива под прядильщиком, желательно с добавлением справа.

(Кроме того, если они достигают своего предела ширины, обертывания и начала снова слева, но ниже полной строки, будет УДИВИТЕЛЬНЫ)

Я не могу понять, как это сделать. Я предполагаю, что добавление ImageView в код в относительный макет (потому что он должен быть расположен справа) - лучший маршрут, но если это возможно в xml, я был бы более чем счастлив использовать его. Любая помощь?

4b9b3361

Ответ 1

В обратном вызове кнопки создайте объект ImageView, установите изображение бутылки и поместите его. Например (я принимаю имена ваших элементов):

ImageView iv = new ImageView(this);
iv.setImageResource(R.drawable.beerbottle);
RelativeLayout rl = (RelativeLayout) findViewById(R.id.RelativeLayout01);
RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(
    RelativeLayout.LayoutParams.WRAP_CONTENT,
    RelativeLayout.LayoutParams.WRAP_CONTENT);
lp.addRule(RelativeLayout.BELOW, R.id.ButtonRecalculate);
lp.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
rl.addView(iv, lp);

Я не проверял это, заметьте, но это должно дать вам хорошее начало. Вам, вероятно, придется добавить другие параметры в ImageView и, возможно, в LayoutParams, чтобы он выглядел хорошо, плюс отслеживание количества бутылок и т.д.