Оцените презентацию от 1 до 5 баллов!
Тип файла:
ppt / pptx (powerpoint)
Всего слайдов:
28 слайдов
Для класса:
1,2,3,4,5,6,7,8,9,10,11
Размер файла:
2.07 MB
Просмотров:
68
Скачиваний:
0
Автор:
неизвестен
Слайды и текст к этой презентации:
№1 слайд
Содержание слайда: Activity Lifecycle – part 2
№2 слайд
Содержание слайда: План презентации
Сохранение состояния при повороте
Создание второго активити
Передача данных во второе активити
Отправка почты с помощью интента
Flashlight v.2.0
Голосовой ввод текста
Практика
№3 слайд
Содержание слайда: На прошлом занятии мы…
Создали поле класса int count = 0;
Сделали кнопку, и обработчик onClick
В обработчике написали:
Нажимали на кнопку несколько раз
Поворачивали экран
Потом снова нажимали на кнопку
И выяснили, что значение сбрасывается.
№4 слайд
Содержание слайда: Сохранение состояния
Удалить все вызовы setRequestedOrientation
Дописать в класс MainActivity два метода:
№5 слайд
Содержание слайда: Создаём второе активити
Добавить новое пустое активити SecondActivity в проект на панели Project:
№6 слайд
Содержание слайда: Создаём второе активити
Меняем тэг в MainActivity.java
String TAG = "FIRST_ACTIVITY";
Обработчик кнопки первого активити:
@Override
public void onClick(View view) {
Intent intent = new Intent(this, SecondActivity.class);
this.startActivity(intent);
}
№7 слайд
Содержание слайда: Как это работает
№8 слайд
Содержание слайда: Что такое Intent
Intent (намерение) – это класс, объекты которого используются для взаимодействия между отдельными частями Android-приложения (например, двумя активити), либо между различными приложениями системы: интенты позволяют отправлять или принимать данные от других активити и сервисов, а также дают возможность оповещать о том, что произошло определённое событие.
https://developer.android.com/reference/android/content/Intent.html
№9 слайд
Содержание слайда: Создаём второе активити
В класс SecondActivity добавляем поле
String TAG = "SECOND_ACTIVITY";
Делаем такие же логи в методах onCreate, onDestroy и тд.
Запускаем, анализируем происходящее:
№10 слайд
№11 слайд
Содержание слайда: Обмен данными
Передать данные во второе активити
Получить данные во втором активити
№12 слайд
Содержание слайда: Практика
Сделать на втором активити кнопку для возврата на первое активити
Первое активити передаёт значение во второе. Второе может вернуть это значение назад, но значение должно быть на 1 больше полученного
Первое активити должно получать значение от второго активити, и может снова передать его второму активити, но тоже на 1 больше полученного
Выводить в заголовок активити this.hashCode() + "", и попытаться понять, что происходит…
№13 слайд
Содержание слайда: Нормальный возврат
Новый вызов второго активити
@Override
public void onClick(View view) {
Intent intent = new Intent(this, SecondActivity.class); // явный и.
this.startActivityForResult(intent, 1);
}
http://startandroid.ru/ru/uroki/vse-uroki-spiskom/68-urok-29-vyzyvaem-activity-i-poluchaem-rezultat-metod-startactivityforresult.html
№14 слайд
Содержание слайда: Нормальный возврат
Обработчик кнопки второго активити
@Override
public void onClick(View view) {
Intent intent = new Intent();
intent.putExtra("smth", "sometext");
setResult(500, intent);
finish();
}
http://startandroid.ru/ru/uroki/vse-uroki-spiskom/69-urok-30-podrobnee-pro-onactivityresult-zachem-nuzhny-requestcode-i-resultcode.html
№15 слайд
Содержание слайда: Нормальный возврат
Добавить метод в MainActivity
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
String str = data.getStringExtra("smth");
// getSupportActionBar().setTitle(requestCode + " " + resultCode + " " + str);
getSupportActionBar().setTitle(this.hashCode()+"");
}
№16 слайд
Содержание слайда: Другое применение интентов
№17 слайд
Содержание слайда: Фильтр подходящих приложений
К сожалению, нет простого решения для показа лишь определённых приложений в стандартном диалоге выбора. В примере по ссылке ниже интентом будут вызваны все приложения, название пакета которых включает сочетание "vk". Как вариант, можно самостоятельно создать кастомный диалог, в котором будет отобранный список нужных приложений. О том, как создать элемент ListView/GridView, заполнить его информацией при помощи BaseAdapter, и разместить это всё в DialogFragment, вы узнаете в следующих занятиях.
https://git.io/vij2b
№18 слайд
Содержание слайда: EditText
XML-файл разметки MainActivity: https://git.io/vifBR
Java-код класса MainActivity: https://git.io/vifBg
№19 слайд
Содержание слайда: Flashlight v.2
Java-код класса MainActivity:
https://git.io/vifaj
(в XML нужна только одна кнопка)
№20 слайд
Содержание слайда: Результаты
№21 слайд
Содержание слайда: Настройки проекта
Где лежит apk-файл?
Как сделать иконки?
№22 слайд
Содержание слайда: Настройки проекта
Что делать с иконками?
Онлайн-сервис подготовит все иконки нужных размеров. Останется только разложить их по подкаталогам папки mipmap!
№23 слайд
Содержание слайда: Гугл продвигает круглые иконки
№24 слайд
Содержание слайда: Практика
Установить иконку для своего приложения.
№25 слайд
Содержание слайда: Подготовка изображений
ПКМ по папке Drawable > New > Vector > Asset > Choose…
№26 слайд
Содержание слайда: Голосовой ввод текста
№27 слайд
Содержание слайда: Голосовой ввод
strings.xml:
https://git.io/viSfV
colors.xml:
https://git.io/viSfi
activity_main.xml:
https://git.io/viSf5
MainActivity.java:
https://git.io/viSfb
№28 слайд
Содержание слайда: Домашнее задание
Передать на второе активити через интент объект типа Cat или Student. Вытащить из переданного объекта основные данные, показать их в заголовке активити, либо тостом.
Реализовать этап регистрации в приложении (полный текст задания в вордовском файле).