Я нахожу необходимость выкладывать довольно сложный пользовательский интерфейс вручную, задавая размеры и положение большинства всех подматричек. Мой план состоит в том, чтобы сначала закодировать XML для экрана 480x320, заставить все работать прямо на демо для клиента на данном устройстве, а затем модифицировать его для производства, программно регулируя размер и положение просмотров, чтобы адаптировать его к любому размеру экрана он работает.явным образом выкладываю UI
Первый ... Я знаю, что это не рекомендуемый подход. Я потратил навсегда попытку заставить автоматические макеты работать правильно (вместе с анимацией). Честно говоря, я не думаю, что они были сделаны для того, как клиент хочет этого, и у меня просто нет времени, чтобы пообщаться с ним. (а также не научитесь делать гибкий пользовательский макет)
Учитывая, что я должен делать измерение/позиционирование? Я могу сделать onMeasure(), чтобы установить размеры (игнорируя входящие параметры и основывая их вместо этого на моем знании разрешения экрана, которое измеряется при запуске Activity), но где я устанавливаю положение каждого представления? В onLayout()? Предположим, что все представления будут подклассами в любом случае (в отличие от использования компонентов из коробки)
В идеале, я хотел бы иметь одно место, где я измеряю разрешение экрана, а затем захватывать каждый вид и устанавливать его x, y, ширина и высота. Это возможно? Если да, то как?
Редактировать: теперь предлагается щедрость. Обратите внимание, что я также сделал эскиз одной простой проблемы, которую я пытаюсь решить - http://karmalita.com/stuff/layout.png - что, если вы можете сделать это «правильным» способом (скажем, используя относительный макет), то щедрость ваша.
'Мой план для кодирования XML для 480x320 дисплея, получить все работая справа на демо для клиента на данном устройстве, а затем модифицируйте его для производства, программно регулируя размер и положение просмотров, чтобы адаптировать его к размеру экрана, на котором он работает. «Это звучит как ужасная идея – Falmarri
Спасибо за ваш вклад , Теперь я был бы в восторге, если бы вы сообщили мне, как вы выложите простую вещь, которую я опубликовал в эскизе. :) – rob