Два перекрывающихся ImageView в Android

В ViewGroup я хочу поместить два перекрывающихся ImageView: imageview A имеет прозрачный фон и некоторый рисунок на изображении, imageview B.

Я хочу, чтобы они оба находились в одном месте и имели одинаковый размер (но не могу исправить их размер в XML, потому что, если изображение в ivB изменится, ivA должен изменить размер, чтобы соответствовать новому размеру.

Поскольку исходное изображение ivA не меняется, я попробовал ivA.getWidth() и ivA.getHeight() для установки размера ivB, но их значение равны 0,0 в методе onCreate().

Есть ли какой-то "простой" способ сделать это?


person Addev    schedule 05.02.2012    source источник


Ответы (2)


Переопределите ImageView, и в onLayout() вы можете получить правильную ширину или высоту после вызова super.onLayout(). Попробуйте установить значения на месте.

person lulumeya    schedule 05.02.2012

Попробуйте получить размеры в onWindowFocusChangedListener.

Более простым способом было бы поместить ImageViews в FrameLayout (который создан для размещения Views поверх другого) и вместо этого изменить размер FrameLayout.

person josephus    schedule 05.02.2012