Подытожим, что нам известно.

Итак, мы ознакомились с несколькими примерами того, как использовать метод setText для изменения View-элемента. Вот пример, который мы только что рассмотрели:

TextView orderSummaryTextView = (TextView) findViewById(R.id.order_summary_text_view);
orderSummaryTextView.setText(message);

Это делается в два шага:

Шаг 1: Получение объекта View с помощью его идентификатора

В первой строке кода мы получаем TextView и сохраняем его в переменную под названием orderSummaryTextView (текстовое поле заказа). Чтоб получить View, мы используем метод findViewById (получить view по идентификатору), это метод из класса Activity. В него передаём один аргумент — идентификатор view, этот аргумент мы предоставляем в виде R.id.IDOFVIEW. В данном случае идентификатор View заданный в XML — order_summary_text_view. Не забывайте про приведение объектов, этим занимается (TextView). То есть возвращаемое значение метода findViewById должно быть типа TextView, а не просто View.

Шаг 2: Вызов метода на объекте View

Поскольку мы вызываем метод на объекте, нужно использовать вызов через точку. Строка orderSummaryTextView.setText(message) — всё равно что инструкция “возьми объект orderSummaryTextView, которому можно присваивать текст (как написано в документации), и присвой ему текст из строки, которую передали в метод (в данном случае передали переменную типа String под названием message).

Ваша очередь

Сейчас Вы отработаете следующие шаги: получение объекта, сохранение его в переменную и управление этим объектом.

Шаг 1: Создайте новый проект

Для начала создайте новый проект (используйте шаблон Empty Activity на версиях Андроид Студио начиная с 1.4). Назовите своё приложение Cookies. Этот проект создаётся также, как проекты BirthdayCard, Just Java (заказ кофе) и Court Counter.

Шаг 2: Скопируйте файлы

Скопируйте и вставьте код Java и XML в соответствующие файлы. Вот ссылка на код.

Потом скопируйте следующую строку в файл build.gradle:

compile 'com.android.support:appcompat-v7:22.1.0'

Если Андроид Студио предложит Вам более новую версию библиотеки совместимости, соглашайтесь.

Вы можете найти файл app gradle внутри скриптов gradle в вашем проекте. Осторожно не путайте его с файлом проекта gradle!

Присваиваем значения View-элементам - 1

Вы должны добавить эту строку внутри зависимостей:

Присваиваем значения View-элементам - 2

Возможно, вам потребуется синхронизировать ваш проект после добавления этого файла:

Присваиваем значения View-элементам - 3

Поместите две картинки в папку drawable (скачать картинки можно в конце лекции), также, как Вы делали в приложении-открытке. Их можно скачать по этой ссылке.

Присваиваем значения View-элементам - 4

Шаг 3: Подключите кнопку

Подключите кнопку “Eat Cookie” (скушать печенье) так, чтоб при её нажатии картинка и текст менялись? как на иллюстрации ниже.

Присваиваем значения View-элементам - 5

Вам придётся изменить код XML для обработки нажатия на кнопку (вы уже делали это в Уроке 2 и в Практическом модуле). После этого используйте навыки, полученные в этом уроке, чтоб управлять картинкой и текстом из Java-кода. Удачи!

Присваиваем значения View-элементам - 6

Вспомогательный материал:

before_cookie.jpg
after_cookie.jpg

Свои ответы и вопросы можете оставлять в комментариях.