Типы компонентов для обработки кнопок

На этом уроке вы узнаете:

  • какие виды кнопок можно запрограммировать в Android;
  • как добавляем кнопки в наши приложения и как связываем их с действиями;
  • как создаём приложения с разными типами кнопок.

5.1. Типы компонентов для обработки кнопок

Среда разработки Android предоставляет разработчикам следующие типы компонентов управления кнопками (рис. 1):

  • Button – стандартная командная кнопка; 
  • ImageButton – командная кнопка с изображением;
  • Chip – разъем (кнопка переключения);
  • ChipGroup – группа разъемов;
  • CheckBox – кнопка выбора (также называемая флажком или полем выбора), используемая для включения или отключения какого-то состояния. Выбранное состояние характеризуется наличием «галочки» в поле выбора;
  • RadioButton – переключатель, радио-кнопка с той же ролью, что и кнопка выбора;
  • RadioGroup – группа переключателей. RadioGroup используется для группировки одной или нескольких кнопок типа RadioButton, позволяя активировать только одну кнопку RadioButton, внутри RadioGroup.
  • ToggleButton – кнопка, которая отображает «включенное» или «отключенное» состояние, с помощью светового индикатора;
  • Switch – кнопка, показывающая два состояния: «включено» или «выключено» с помощью индикатора on или off;
  • FloatingActionButton – кнопка плавающего действия, используемая для добавления какого-либо действия (например, добавления элемента в существующий список). 

    В этом уроке мы с вами научимся использовать основные типы кнопок: Button, ImageButton, CkeckBox, RadioButton, RadioGroup, ToggleButton  и Switch. Компонента Button используется в основном для запуска какого-то действия. На такой кнопке могут появляться только значки и тексты — установленные как значения атрибута text, кнопки. Цвет текста на кнопке задается свойством textcolor.

    Чтобы присвоить кнопке какое-то действие, то есть – запрограммировать «реакцию» приложения при нажатии кнопки, проделаем следующие шаги:

    1.Открываем файл activity_man.xml в режиме Code.

    2. В раздел, где описана кнопка, добавляем строку  android:onClick=”afiseaza”, где afișează — это имя функции, которая будет вызываться при нажатии данной кнопки. Эту функцию следует записать в файл MainActivity.java (рис. 2).

    3. Нажимаем на текст “afiseaza”. Слева появляется «лампочка».

    4. Нажимаем на лампочку и выбираем, в появившемся меню, опцию Create ’afiseaza(View)’ in ’MainActivity ’.

      Нас перенаправляет в файл MainActivity.java где был создан прототип функции  afișează:


      5. Пишем инструкции, связанные с действием, которое будет выполнено при нажатии кнопки, рис. 3).

      • Компонента ImageButton выполняет ту же роль, что и обычная командная кнопка (типа «Button»), за исключением того, что кнопка «Image Button» может отображать изображение.
      • При добавлении ImageButton в режиме дизайна, появится окно, через которое мы укажем источник изображения на кнопке (Рис. 4).
      • Наиболее важным атрибутом этого компонента является атрибут src, который определяет файл изображения (включая его местоположение).
      • Метод setBackgroundColor(culoare) с параметром «цвет», кнопки ImageButton, устанавливает цвет фона кнопки.
      • Компонента CheckBox отображает поле проверки (также называемое кнопкой выбора). Обычно она используется для включения или отключения состояния или режима. Выбранное состояние характеризуется наличием «галочки» в поле (Рис. 5). Cамый важный атрибут класса CheckBox это checked (логического типа), который устанавливает текущее состояние кнопки. 

      Значение false является значением по умолчанию и соответствует ситуации, когда кнопка не активировала состояние (например, флажок отсутствует). Можно проверить текущее состояние флажка динамически (в исходном коде), используя метод isChecked(), который возвращает логическое значение: true или false.

      • RadioButton отображает радио-переключатель, который, если он один, выполняет ту же роль, что и кнопка выбора. Как правило, переключатели используются группами (Рис. 6). При выборе одной кнопки, остальные кнопки из группы автоматически становятся невыбранными. Собственно, для создания групп радио-переключателей используется компонент RadioGroup.

      Toggle Button представляет собой кнопку-переключатель со световым индикатором, который указывает текущее состояние кнопки ON или OFF: выключено-включено или подключено-отключено (Рис. 7).

      Он может быть полезен в следующих ситуациях: включение или выключение звука, Bluetooth, Wi-Fi, точка доступа – подключено или отключено и другое. Состояние OFF установлено по умолчанию.

      Кнопка Switch используется для отображения состояний:   включеноотмечено, или выключеноне отмечено.

      Используя сенсорный экран устройства, пользователь может провести пальцем по экрану, чтобы выбрать вариант: ON или OFF (Рис. 8).