Читаем Программирование приложений для мобильных устройств под управлением Android. Часть 1 полностью

Следующая вьюшка называется ToggleButton (переключатель). Переключатель – это другой вид кнопки, однако имеет дополнительное свойство – когда вы нажимаете его, он остается нажатым, пока вы не нажмете его снова. Таким образом, переключатель всегда находится в одном из двух состояний – включено или выключено. Переключатели также обычно выводят на экран некоторый индикатор, чтобы сообщить пользователю, в каком положении находится кнопка в настоящее время.

Следующей view, о которой я буду говорить, является Checkbox (чекбокс, флажок, галочка). Используется, например, в анкете, где вы можете отметить и выбрать нужный пункт. Флажок – фактически просто другой вид кнопки с двумя состояниями, как переключатель. Основное различие в том, как он выглядит для пользователя. Флажки обычно изображаются в виде пустого квадратика, когда флажок не отмечен. И показывают галочку или символ «x», когда флажок находится в отмеченном состоянии. Код приложения для использования чекбокса аналогичен двум предыдущим.

И последняя view, о которой мы поговорим – AutoCompleteTextView. Это поле для ввода и редактирования текста с функцией автозавершения является немного более усовершенствованной разновидностью TextView (надпись или нередактируемый текст) и EditText (поле для ввода и редактирования текста). Автозавершение показывает пользователю список вариантов для ввода текста. И мы будем фильтровать этот список в зависимости от того, что вы вводите. И как только вы сузите список, вы сможете коснуться единственной записи, которая будет тогда помещена в текстовое поле.

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

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

Самый распространенный способ обработать событие – это присоединить «слушателя» (listener) к вьюшке. Android определяет много различных видов интерфейсов «слушателя». И методы, определенные этими интерфейсами, будут вызваны каждый раз, когда произойдут определенные события с вьюшкой.

Например, класс View определяет интерфейс «слушателя» onClickListener, который имеет метод onClick. Этот метод вызывается каждый раз, когда по вьюшке кликнули.

Класс View также определяет «слушателя» длинного клика – onLongClickListener. Он имеет метод onLongClick, и этот метод вызывается каждый раз, когда вьюшку нажимают и удерживают нажатой в течение определенного промежутка времени.

Класс View также определяет «слушателя» изменения фокуса onFocusChangeListener. Он имеет метод onFocusChange, и этот метод вызывается, когда вьюшка получила или потеряла фокус. Также есть много других событий, которые вы также можете прослушивать.

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

Например, у вас могло бы быть приложение, которое спрашивает пользователя, какого он возраста, и позволяет выбрать из ряда возрастных диапазонов: до 20, 20 – 34, 35 – 49, и более чем 50. Чтобы это реализовать, у вас был бы набор текстовых вью для всех различных возрастных диапазонов, и затем рядом с каждым текстовым вью вы поместили бы флажок. Но вы хотели бы удостовериться, что только один из флажков отмечается, потому что возрастные диапазоны, очевидно, являются взаимоисключающими.

Чтобы поддерживать такие сложные представления как это, у Android есть класс под названием ViewGroup – это невидимые группы, которые содержат другие вью. И таким образом, вы можете использовать их, чтобы сгруппировать и организовать по нескольку вьюшек. ViewGroup – базовый класс для контейнеров вью и лейаутов. Точно так же, как с простыми вью, Android обеспечивает много предопределенных групп вью. Это такие, как: RadioGroup, TimePicker, DatePicker, WebView, MapView, Gallery и Spinner. Давайте рассмотрим каждый из них по отдельности.

Давайте начнем с RadioGroup. Это ViewGroup, содержащий ряд взаимоисключающих флажков или переключателей. Таким образом, в любой момент может быть установлен только один из переключателей. Давайте посмотрим на пример приложения.

Перейти на страницу:

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных