УФ2. Верстка
Last updated
Was this helpful?
Last updated
Was this helpful?
Для настройки графического редактора:
В окне проекта откройте app > res > layout > activity_main.xml.
Чтобы было больше места для окна графического редактора скройте структуру проекта. Для того чтобы сделать это, кликните по кнопке слева сверху View > Tool Windows > Project, или кликните по вертикальной кнопке Project, которая находится в левом краю экрана Android Studio .
Если редактор показывает исходный XML-код, то кликните по кнопке Design, которая находится в правом верхнем углу окна.
Кликните по (Select Design Surface) и выберите Design + Blueprint.
Кликните (View Options) и убедитесь, что активна опция Show All Constraints.
Убедитесь в том, что автоматическое подсоединение элементов выключено (Enable Autoconnection to Parent).
Click (Default Margins) и выберите 16. Если необходимо, то вы можете настроить отступы для каждого View позже.
В результате выполненных шагов мы настроили редактор для дальнейшей работы на основе макета под названием ConstraintLayout, который определяет позицию объекта View на основе создания ограничений (constraints) по отношению к другим объектам View и макету. Вы можете увидеть такие constraints, посмотрев на текстовый блок "Hello, World!" - у него есть 4 constraints, которые цепляются за каждую границу макета.
В приложении будет 2 Activity - MainActivity и SimpleCalculator. В MainActivity будет меню выбора вида калькулятора. В SimpleCalculator будет вид простого калькулятора который будет содержать:
2 текстовых поля;
10 кнопок с цифрами;
6 кнопок с операциями (плюс, минус, умножение, деление и удаление)
Сверху располагается текстовое поле вывода значения вычислений. Ниже располагается текстовое поле вывода значений, которые были активированы по кнопке. Ниже этого поля располагаются кнопки.
Кнопки располагаются таким образом, чтобы было примерно 4 кнопки в ряду.
Объектам необходимо присвоить ID, соответствующие их назначению и текстовое значение, создав для каждого объекта строку в файле strings.
Для аккуратного расположения кнопок создается 4 контейнера LinearLayout с горизонтальным расположением.
Текстовые поля по ширине должны быть равны match_constraint.
Кнопки по высоте и ширине должны wrap_content.
LinearLayout по высоте и ширине должны быть wrap_content.
На рис. 1 показано примерное создание верстки.