Азы работы в Android Studio

Азы работы в Android Studio.

Давайте разберемся еще с несколькими базовыми вопросами, которые могут встать при создании нового приложения в Android Studio. Если вы выполнили все шаги, описанные в предыдущих статьях — «каркас приложения» готов, и мы можем на него посмотреть. Для этого требуется запустить эмулятор.

Как запустить эмулятор в Android Studio

Сначала надо его создать: на верхней панели следует выбрать значок (icon), запускающий AVD Manager, встроенную в Android Studio программу для создания и управления свойствами Android Visual Driver, то есть эмуляторами:

Затем надо либо создать эмулятор, либо запустить уже существующий (один из существующих, если у вас их несколько), подождать некоторое время и получить результат:

Разумеется, никакие нажатия ни к чему не приводят, ведь мы еще ничего не делали в файле java. Но, прежде всего надо изменить идентификаторы компонентов.

Идентификатор элемента

Идентификатор элемента (id) — это одно из самых важных его свойств, потому что именно с его помощью мы получаем возможность четко и безошибочно отличить один элемент (компонент) от другого. Это полный аналог тех свойств в нашей повседневной жизни, с помощью которых можно безошибочно и совершенно однозначно идентифицировать человека (отпечатки пальцев), книгу (индекс по каталогу), банкноту (ее номер) и т.д.

В принципе, Android Studio самостоятельно устанавливает каждому элементу идентификатор: обратите внимание, что и у «наклейки» (TextView), и у «кнопки» (Button) уже есть идентификаторы. Вот только никакой смысловой нагрузки у этих идентификаторов нет, и это может создать ненужную путаницу и сложности при разработке аппликаций с большим количеством элементов и активностей. Поэтому заменим вписанные Android Studio идентификаторы на более осмысленные: tvNumber для «наклейки» и btnRandNumber для «кнопки».

Помни имя свое

Сначала в файле java создадим две переменные, соответственно двум компонентам (элементам), которые мы добавили в xml-файл:

TextView tvNumber;

Button btnRandNumber;

Совершенно не обязательно давать переменным имена, в точности совпадающие с идентификаторами, которые мы присвоили компонентам в файле xml. Безо всяких проблем идентификаторы и имена переменных (а в данном случае речь идет о двух переменных, одна из которых типа TextView, а вторая — типа Button) могут иметь совершенно разный вид. Однако я давно пришел к выводу, что совпадение идентификаторов и имен переменных — чрезвычайно удобно. Но, повторим еще раз, выбор остается за тем, кто создает аппликацию — каждый выбирает по себе… Кстати, и тут можно воспользоваться автоматической помощью от Android Studio, это действительно удобно:

Помощь эта оказывается совершенно необходимой, если вдруг часть кода окажется помеченной как ошибочная (красный цвет)! Поставьте курсор на участок кода, отмеченный как ошибочный, и нажмите комбинацию двух клавиш: Alt+Enter. Вы получите возможные пути исправления ошибки, причем варианты будут расположены не по алфавиту, а по варианту с наиболее вероятным способом исправления!

Итак, мы имеем следующую ситуацию:

— в файле xml созданы два компонента и у каждого имеется свой идентификатор;
— в файле java созданы две переменные.

Однако никакой связи между переменными и компонентами нет и в помине. А надо, чтобы такая связь была! Для чего? Связь между переменной в файле java и идентификатором элемента в файле xml гарантирует, что операции над переменной будут немедленно «отзываться» в элементе — и это совершенно необходимое и исключительно базовое условие нормального функционирования аппликации. Вспомните: мы хотим, чтобы нажатие на элемент «кнопка» (Button) не только приводило к созданию нового случайного числа, но и к появлению этого числа на элементе «наклейка».

Для установления связи между идентификатором элемента и переменной воспользуемся существующим в языке Java методом findViewByld:

tyNumber= (TextView) f indViewById (R. id. tvNumber’); Обратите внимание, что Android Studio не только предлагает помощь в написании команды (рекомендую использовать это предложение), но и обнаруживает ошибку в его использовании, и предлагает ее исправить с помощью так называемого «кастинга» (casting), который в русской терминологии называют «приведением к типу».

Дело в том, что метод работает с переменными типа View, наследниками которого, кроме прочих, являются и типы TextView и Button. Поэтому, после того, как мы применяем этот метод к переменной не самого типа View, а к переменной какого-то типа-наследника от View (например, переменной типа TextView), требуется дополнить использование метода «приведением к типу» (cast to…). Аналогичным образом записываем команду, связывающую компонент «кнопка» (Button) с соответствующей переменной — и получаем следующие две команды: tvNumber= (TextView) findViewById (R. id. tvNumber}; btnRandNumber= (Button) f indViewById (R. id. btnRandNumber»);

Параметры, которые использует в этих командах метод findViewByld, чрезвычайно важен и заслуживает того, чтобы мы описали его поподробнее.

В проекте всегда присутствует файл R.java, в котором автоматически («руками не трогать!», там так и написано) фиксируются, во внутренних классах, все относящееся к проекту. Один из классов называется id, и в нем регистрируются все идентификаторы, которые существуют (в любой момент!) в проекте. Так что запись R.id… означает указание использовать элемент с соответствующим идентификатором.

К слову, если вы уже создали некое приложение, заточенное под определенные бизнес задачи — в условиях высокой конкуренции продвинуть его будет весьма проблематично. Пользователи должны узнать о существовании программного продукта, и без рекламы не обойтись. Антикризисное продвижение бизнеса в Киеве поможет решить широкий спектр вопросов, связанных со всеми этапами продвижения вашего программного продукта в массы и по доступным ценам! Доверить SEO вопросы профессионалам, и сосредоточьтесь на качестве и функциональности вашего программного продукта.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *