Макеты просто ужасны. Графический интерфейс хуже, чем xml, но оба они ужасны, извините людей, которые потратили на него время и силы, но попытаться найти элементы управления там, где вы хотели бы видеть их на экране, гораздо сложнее, чем следовало бы. Не многие приложения, о которых я знаю, требуют простой разметки слева направо или сверху вниз.
Я знаю, что схема должна быть как можно более неконкретной, с достаточным количеством информации, чтобы само устройство могло разметить приложение по своему размеру. Редкими являются случаи, когда мы можем просто оставить это на усмотрение устройства.
Честно говоря, простой HTML / CSS-макет намного лучше с гораздо большими шансами на успех на нескольких устройствах и намного проще для разработчика.
Итак, оригинальный постер, если ваше приложение может быть веб-приложением, тогда используйте веб-приложение для Android. Знакомая территория и все такое.
В качестве альтернативы, делайте макеты в коде. В Windows Apps я обычно все равно делаю свои макеты в коде. На Android я помещаю свои элементы управления в xml-файл только с типом элемента управления и его идентификатором.
Тогда все остальное в коде, единственное волшебство, которое вам нужно сейчас, - это определить размер экрана, который объясняется здесь Размер экрана обнаружения Android Запомните часть «Экран в DP».
Кроме того, у вас есть изменение размера в одной функции, которую вы вызываете для любого изменения ориентации.
Прежде, чем люди начнут кричать 'CPU over load !!!' Подумайте об этом, сколько элементов управления у вас обычно есть на экране в любое время? Ну, на самом деле это от одного до 4. Очевидно, что за некоторыми исключениями, посмотрите на каждое приложение на вашем устройстве, помня, что во многих приложениях, которые имеют несколько элементов управления, они сгруппированы как один элемент. Таким образом, изменение размера до 4 элементов управления не занимает больше времени, чем требуется системе для обработки изменения ориентации.