6) ScrollView – скроллинг. Используется при больших объёмах текста, картинок и прочего, которые не помещаются на экран и требуется прокрутка. ScrollView внутри себя может иметь только один дочерний элемент, например LinearLayout, а в этом макете уже размещаются остальные элементы.
Шпаргалка № 3. Параметры.
Абсолютно все макеты и элементы, которые содержит в себе приложение, должны иметь некие параметры: название, размер (высота и ширина), вес, ориентация, задний фон, цвет и многое другое. В этой главе мы рассмотрим основные, самые важные параметры для разметок и их элементов.
android:id="@+id/abc" – ID элемента (имя), пожалуй самый важный параметр, так как при любом действии Android Studio будет обращаться к элементу именно по ID.
android:layout_width="match_parent" – ширина элемента, бывает двух типов "match_parent" – будет растянут на весь контейнер, или "wrap_content" – займёт места столько, сколько внутри будет контента (например, текста). Также, при необходимости, можно указывать размер вручную, для этого необходимо указать следующий параметр в пикселях, например "200dp". Цифра может быть любая, хоть 121, хоть 367.
android:layout_height="wrap_content" – высота элемента. Все параметры такие же, как и у ширины.
android:layout_weight="1" – вес. Данный параметр чаще всего используется в разметке LinearLayout, когда элементы должны занимать на экране определенное количество места, но делать это должны автоматически, а не вручную. Параметр может быть любой, начиная от числа 0,1.
android:orientation="vertical" – ориентация макета. Бывает "vertical" – вертикальная, и "horizontal" – горизонтальная.
android:background="@color/cherry" – задний фон. На любой макет или элемент можно установить задний фон. Это может быть просто сплошной цвет, который взят из базы цветов в разделе color ("@color/cherry"), или прописан кодом ("#D12B68"), а также это может быть любая картинка ("@drawable/print", "@mipmap/print").
android:gravity="center" – гравитация. Определяет местоположение текста внутри элемента, в данном примере – по центру.
android:layout_gravity="center_horizontal" – определяет местоположение элемента внутри контейнера. Так же, как и android:gravity может быть разных видов: "top" – сверху, "bottom" – снизу, "left" – слева, "right" – справа.
android:text="@string/text" – данный параметр используется чаще всего для текстовых элементов или кнопок, которые содержат в себе надписи, подписи, тексты.
android:paddingTop="10dp" – параметр, который используется для отступа содержимого элемента внутри этого самого элемента сверху, значение может быть любое.
android:paddingBottom="10dp" – отступ снизу.
android:paddingLeft="10dp" – отступ слева.
android:paddingRight="10dp" – отступ справа.
android:padding="20dp" – используется для равномерного отступа со всех сторон.
android:layout_marginTop="15dp" – в отличие от предыдущего, данный параметр используется для отступа элемента внутри контейнера, либо для отступа от соседнего элемента, так же может быть сверху (layout_marginTop), снизу (layout_marginBottom), слева (layout_marginLeft) и справа (layout_marginRight). Значение в dp может быть любое.
android:layout_margin="25dp" – используется для равномерного отступа со всех сторон.
style="@style/MyTextStyle" – если приложение содержит в себе множество элементов с одинаковыми параметрами, гораздо удобнее создать стиль, указав его для элемента. Так и код смотрится более читабельно, и, если будет необходимость что-то в этих параметрах изменить – изменять придётся только в одном месте, а не в 10, 20, 50 и более элементах.
Конечно, это лишь малая часть из всех существующих параметров, но это самые наиболее часто используемые и нужные. Более подробно мы ещё будем их рассматривать на практике в последующих главах.
Шпаргалка № 4. Текстовое поле.
Ни одно приложение не обходится без текста, каких-либо надписей, подписей, информации о приложении, в некоторых случаях даже ввода текста самим пользователем. За всё это отвечает текстовое поле. Об этом и поговорим.
Текстовые поля в редакторе бывают двух видов TextView и EditText.
TextView – элемент, содержащий в себе определённое количество любого текста и предназначен он только для его просмотра, без возможности редактирования пользователем.
EditText – это также текстовое поле, но уже с возможностью ввода или редактирования текста.
Добавляем текстовое поле в приложение:
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
По умолчанию только что созданное текстовое поле всегда имеет только два параметра, ширину и высоту.
В первую очередь нужно задать имя, для этого добавляем строку:
android:id="@+id/tv1"
Назовем его, например, tv1. Но в Вашем случае название может быть каким угодно, главное, чтобы оно было, и Вы могли к нему обратиться в случае необходимости.
Определяемся с текстом, допустим, это будет что-то приветственное, «Добро пожаловать!»
В ресурсах ищем файл strings.xml, там хранятся все строковые ресурсы, используемые в приложении, создаём строку:
<string name="str1">Добро пожаловать!</string>
Добавляем текст в наше поле:
android:text="@string/str1"
Чтобы текст на экране мобильного телефона выглядел красиво и приятно читался, необходимо прописать параметры, которые его улучшат, так как Android Studio по умолчанию предлагает стандартный вид.