Полезные примеры Android

Полезные примеры Android
Android — макеты пользовательского интерфейса

Базовым строительным блоком для пользовательского интерфейса является объект View, который создается из класса View и занимает прямоугольную область на экране и отвечает за рисование и обработку событий. View — это базовый класс для виджетов, которые используются для создания интерактивных компонентов пользовательского интерфейса, таких как кнопки, текстовые поля и т. Д.

ViewGroup является подклассом View и обеспечивает невидимый контейнер , которые держат другие взгляды или другие ViewGroups и определить их свойства макета.

На третьем уровне у нас есть разные макеты, которые являются подклассами класса ViewGroup, и типичный макет определяет визуальную структуру для пользовательского интерфейса Android и может быть создан либо во время выполнения с использованием объектов View / ViewGroup, либо вы можете объявить свой макет с помощью простого XML-файла main_layout .xml, который находится в папке res / layout вашего проекта.

Макет

Параметры макета

Это руководство больше о создании графического интерфейса пользователя на основе макетов, определенных в файле XML. Макет может содержать виджеты любого типа, такие как кнопки, метки, текстовые поля и так далее. Ниже приведен простой пример XML-файла с LinearLayout:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="This is a TextView" />
<Button android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="This is a Button" />
<!-- More GUI components go here  -->
</LinearLayout>

После создания макета вы можете загрузить ресурс макета из кода приложения в реализации обратного вызова Activity.onCreate (), как показано ниже —

public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}

Типы макетов Android

Android предоставляет несколько макетов, которые вы будете использовать почти во всех приложениях Android, чтобы обеспечить различный вид, внешний вид и удобство использования.

Sr.No Макет и описание
1 Linear Layout

LinearLayout — это группа представлений, которая выравнивает всех дочерних элементов в одном направлении, вертикально или горизонтально.

2 Relative Layout

RelativeLayout — это группа представлений, которая отображает дочерние представления в относительных положениях.

3 Table Layout

TableLayout — это представление, которое группирует представления в строки и столбцы.

4 Absolute Layout

AbsoluteLayout позволяет указать точное местоположение его дочерних элементов.

5 Frame Layout

FrameLayout — это заполнитель на экране, который можно использовать для отображения одного представления.

6 List View

ListView — это группа представлений, которая отображает список прокручиваемых элементов.

7 Grid View

GridView — это ViewGroup, которая отображает элементы в двумерной прокручиваемой сетке.

Атрибуты макета

Каждый макет имеет набор атрибутов, определяющих визуальные свойства этого макета. Среди всех макетов есть несколько общих атрибутов, и есть другие атрибуты, специфичные для этого макета. Ниже приведены общие атрибуты, которые будут применяться ко всем макетам:

Sr.No Атрибут и описание
1

android: id

Это идентификатор, который однозначно идентифицирует представление.

2

android: layout_width

Это ширина макета.

3

android: layout_height

Это высота макета

4

android: layout_marginTop

Это дополнительное пространство в верхней части макета.

5

android: layout_marginBottom

Это дополнительное пространство в нижней части макета.

6

android: layout_marginLeft

Это дополнительное пространство в левой части макета.

7

android: layout_marginRight

Это дополнительное пространство в правой части макета.

8

android: layout_gravity

Это определяет, как позиционируются дочерние представления.

9

android: layout_weight

Это указывает, какая часть дополнительного пространства в макете должна быть выделена для представления.

10

android: layout_x

Это определяет x-координату макета.

11

android: layout_y

Это определяет координату Y макета.

12

android: layout_width

Это ширина макета.

13

android: paddingLeft

Это левая заливка макета.

14

android: paddingRight

Это правильный отступ для макета.

15

android: paddingTop

Это верхний отступ для макета.

16

android: paddingBottom

Это нижний отступ, заполненный для макета.

Здесь ширина и высота — это размер макета / представления, который можно указать в терминах dp (пиксели, не зависящие от плотности), sp (пиксели, не зависящие от масштаба), pt (точки, которые составляют 1/72 дюйма), px ( Пиксели), мм (миллиметры) и, наконец, дюймы (дюймы).

Вы можете указать ширину и высоту с точными размерами, но чаще вы будете использовать одну из этих констант для установки ширины или высоты —

  • android: layout_width = wrap_content сообщает вашему представлению, что его размер должен соответствовать размерам, необходимым для его содержимого.

  • android: layout_width = fill_parent сообщает, что ваше представление станет таким же большим, как и его родительское представление.

Атрибут гравитации играет важную роль в позиционировании объекта просмотра, и он может принимать одно или несколько (разделенных знаком |) из следующих постоянных значений.

Постоянный Ценность Описание
верх 0x30 Толкайте объект в верхнюю часть контейнера, не меняя его размера.
дно 0x50 Толкните объект на дно контейнера, не меняя его размера.
осталось 0x03 Сдвинуть объект слева от контейнера, не меняя его размера.
правильно 0x05 Сдвиньте объект справа от контейнера, не меняя его размера.
center_vertical 0x10 Поместите объект в центр контейнера по вертикали, не меняя его размера.
fill_vertical 0x70 При необходимости увеличьте вертикальный размер объекта, чтобы он полностью заполнил свой контейнер.
center_horizontal 0x01 Поместите объект в центр контейнера по горизонтали, не меняя его размера.
fill_horizontal 0x07 При необходимости увеличьте горизонтальный размер объекта, чтобы он полностью заполнил свой контейнер.
центр 0x11 Поместите объект в центр контейнера как по вертикальной, так и по горизонтальной оси, не меняя его размера.
заполнить 0x77 При необходимости увеличьте горизонтальный и вертикальный размер объекта, чтобы он полностью заполнил свой контейнер.
clip_vertical 0x80 Дополнительная опция, которая может быть установлена ​​так, чтобы верхний и / или нижний края дочернего элемента были обрезаны по границам его контейнера. Зажим будет основан на вертикальной силе тяжести: верхняя сила тяжести ограничит нижний край, нижняя сила тяжести ограничит верхний край, и ни одна из них не будет зажимать оба края.
clip_horizontal 0x08 Дополнительная опция, которая может быть настроена так, чтобы левый и / или правый край дочернего элемента был обрезан по границам его контейнера. Клип будет основан на горизонтальной гравитации: левая сила тяжести будет обрезать правый край, правая сила тяжести будет обрезать левый край, и ни одна из них не будет обрезать оба края.
Начните 0x00800003 Переместите объект в начало контейнера, не меняя его размера.
конец 0x00800005 Протолкните объект до конца контейнера, не меняя его размера.

Просмотр идентификации

Объекту представления может быть назначен уникальный идентификатор, который будет однозначно идентифицировать представление в дереве. Синтаксис идентификатора внутри тега XML —

android:id="@+id/my_button"

Ниже приводится краткое описание знаков @ и +.

  • Ат-символ (@) в начале строки указывает, что синтаксический анализатор XML должен проанализировать и развернуть остальную часть строки идентификатора и идентифицировать его как ресурс идентификатора.

  • Знак плюс (+) означает, что это новое имя ресурса, которое необходимо создать и добавить к нашим ресурсам. Чтобы создать экземпляр объекта просмотра и захватить его из макета, используйте следующее:

Button myButton = (Button) findViewById(R.id.my_button);
Select the fields to be shown. Others will be hidden. Drag and drop to rearrange the order.
  • Image
  • SKU
  • Rating
  • Price
  • Stock
  • Availability
  • Add to cart
  • Description
  • Content
  • Weight
  • Dimensions
  • Additional information
  • Attributes
  • Custom attributes
  • Custom fields
Click outside to hide the compare bar
Compare