2014-01-28 3 views
0

Я застрял, и я думаю, что мудрость (ака опыт) - единственное решение.Динамическое масштабирование макета Android (How-To?)

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

Пример: Я могу начать с 8 ящиков, которые равномерно распределены и отображают данные с разумной шкалой шрифтов.

Eight boxes per a screen

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

Sixteen boxes per a screen

Я в настоящее время пытается использовать TableLayout, но я не уверен, как сделать все правильно масштабировать. Кроме того, я генерирую все программно, расширяя TableLayout. Может кто-то указать мне в правильном направлении. Есть ли лучший способ компоновки, который я не вижу? Я уверен, что я не первый человек, который нуждается в этом, так есть ли примеры, которые я просто не нахожу при поиске?

ответ

0

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

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