Не до конца понял принцип работы Layouts
Начал изучать андроид разработку, задался множеством вопросов когда узнал о возможности добавления разных типов Layouts в один XML файл, ну или файл макета, как вам удобнее, вопросы возникли к верхней строчке XML файла где присутствует и описан определенный вид Layout например Linear Layout. Код:
<androidx.appcompat.widget.LinearLayoutCompat xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".MainActivity"/>
<androidx.appcompat.widget.LinearLayoutCompat - вот эта строка вызвала сомнение, я прочитал что это какой-то корневой элемент в языке XML но что он делает и почему ему присваивается имя одного из видов Layout я понять так и не смог, сначала я думал что это что-то по типу "контейнера" в который кладутся определенные типы Layouts, но покопавшись в дизайне макета, ничего туда положить не смог, я думаю что эта какая-то библиотека или что-то по типу того, но какую из этих "библиотек" использовать, как и с чем, я так и не понял, буду рад если объясните чайнику.
Ответы (1 шт):
"это что-то по типу "контейнера" в который кладутся определенные типы Layouts" или сами элементы.
Грубо говоря, в Андроид верстке, на экране может быть только 1 элемент. А вы хотите разместить несколько. Как быть?
Вы размещаете на экране единственный элемент - нужный вам Layout. И уже в него кладете (ложите) необходимые элементы.
Пустая XML, без корневого элемента - это ваш мольберт.
Корневой элемент - это холст. Холст должен стоять на мольберте.
Ваши View для UI - ваше изображение. вы должны рисовать их на холсте.
Все автоматические приписки типа xmlns:android= - это то, что делает ваш холст холстом, а не просто куском дерева с тканью.