Как я создаю ImageView в коде Java, в рамках существующего Расположения?

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

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

PICTURE OF THE APP

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

Таким образом, если бы я нажал добавить кнопку пива, то drawable из пива появилось бы ниже счетчика. Если я нажал добавить кнопку пива снова, я хочу там быть ДВУМЯ drawables пива под счетчиком, предпочтительно с ними добавляемый справа.

(Кроме того, имение их достигает их предела ширины, переноса, и запуска снова слева, но ниже сплошной линии, было бы ПОТРЯСАЮЩИМ),

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

17
задан Michael 15 March 2014 в 13:33
поделиться

1 ответ

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

ImageView imageView = new ImageView(this);
imageView.setImageResource(R.drawable.beerbottle);

RelativeLayout relativeLayout = (RelativeLayout) findViewById(R.id.RelativeLayout01);
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(
    RelativeLayout.LayoutParams.WRAP_CONTENT,
    RelativeLayout.LayoutParams.WRAP_CONTENT
);
layoutParams.addRule(RelativeLayout.BELOW, R.id.ButtonRecalculate);
layoutParams.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);

relativeLayout.addView(imageView, layoutParams);

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

47
ответ дан 30 November 2019 в 10:53
поделиться
Другие вопросы по тегам:

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