2012-03-07 2 views
1

У меня есть ImageView в моем макете. Его ширина и высота устанавливаются как fill_parent. Тип scaleType установлен в fitCenter. Я в ландшафтном режиме. Поэтому, если у меня есть квадратное изображение src, при масштабировании он отобразит мне две границы, слева и справа, что мне совершенно подходит. Но как я могу получить размеры этих границ? Размеры растрового изображения не помогут, и размеры ImageView равны размеру экрана.Получите Drawable размер ImageView после масштабирования

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

Я попытался adjustViewBounds, но ImageView по-прежнему заполняет все родительские.

Любая идея?

Благодаря

ответ

0

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

+0

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

0

См. Мой ответ здесь Get drawable displayed size after scaling о том, как рассчитать отображаемый размер для FIT_CENTER scaleType.

И для вычисления размеров границы просто вычитайте вычисленное значение и разделите на 2 из изображения.

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