2012-05-10 5 views
2

У меня есть ImageView, который я загружаю с помощью растрового изображения, scaleType устанавливается в center_crop. Я хочу наложить поверх него, RelativeLayout.Наложение поверх ImageView

Моя проблема заключается в том, что мой оверлей никогда не заканчивается тем же размером, что и мой ImageView, а оверлейные дети должны поддерживать позиции над imageView.

Дети наложения, скорее всего, будут кучкой ImageButtons, поэтому можно использовать определенные точки на карте.

У меня есть как ImageView, так и RelativeLayout с FrameLayout как родительский. Я запрашиваю, чтобы содержимое изображения загружалось через HTTP, когда оно получено, я загружаю ImageView, а затем устанавливаю размер наложения с помощью FrameLayout.LayoutParams, устанавливая размер ImageView (через getWidth и getHeight), но размер всегда выключен.

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

Как я могу это достичь?

+0

Что оверлей это? почему бы не сделать пользовательский просмотр и нарисовать растровое изображение и наложить все сразу? – xandy

+0

Вероятно, следовало лучше объяснить, идея заключается в том, чтобы наложение содержало ImageButtons, поэтому пользователь может использовать определенные части изображения, которые будут содержать карту. ImageButtons также изменит изображение в зависимости от определенных состояний этих местоположений. –

ответ

0

в зависимости от того мнения завышены/создали вы могли бы попытаться сделать недействительным полное представление для обеспечения, что правильные атрибуты ширины & высоты известны, когда inflaiting элементы

+0

Благодарим вас, пояснил далее, что мне также необходимо выполнить какое-то масштабирование, иначе позиции дочерних элементов наложения не будут сохранены поверх изображения. –

Смежные вопросы