Android: как изменить гравитацию ImageButton, помещенного в динамически создаваемые макеты

У меня есть основной динамически сгенерированный LinearLayout, содержащий 4 элемента: - A TextView (динамический width) - An ImageView (статический width) - A TextView (динамический width) - An ImageButton (статический width)

Первые 3 элемента должны быть склеены вместе, а последний должен плавать в правой части экрана.

Name - Rating starts - Number of reviews................. Gmap icon 

Текущее: Текущий экран

Ожидается: Ожидаемый экран

Я нашел решение, вычисляющее ширину сгенерированных элементов, а затем используя это значение для установки ширины layout, содержащего элементы 2 и 3 вместе.


person Vincent Roye    schedule 05.04.2016    source источник
comment
Пожалуйста, опубликуйте свой текущий снимок экрана и ожидаемый   -  person User_1191    schedule 05.04.2016


Ответы (2)


Вы можете попробовать добавить linearlayout вместо вашего «значка Gmap» и дать ему следующие настройки

LinearLayout layout = new LinearLayout(this);
layout.setOrientation(LinearLayout.HORIZONTAL);

layout.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT));
layout.setGravity(Gravity.RIGHT);

а затем поместите свою кнопку в этот linearLayout

layout.addView(myImgButton);
person Groco    schedule 05.04.2016

Вы собираетесь использовать android:scaleType=

person C. Hellmann    schedule 08.12.2020