Как перестать думать об обратной поддержке и начать...

Preview:

Citation preview

Как перестать думать об обратной поддержке и начать жить

Основные новшества

● MipMap● AppCompat Widget● Android Design

Support Library

MipMap

Вопросы:● Что за …?

● Где мои drawable, чувак?

Что об этом думает Google?

Использование mipmap в качестве источника для вашего растрового изображения или Drawable это простой способ, чтобы обеспечить качественные изображения и различные масштабы изображений, которые могут быть особенно полезны, если ваше изображение будет масштабироваться во время анимации

Посмотрим на изображение уменьшенное в 8 раз с использованием mipmap и без.

Зачем это мне?Рассмотрим Nexus 6. Он имеет плотность 560 точек на дюйм, что попадает в между xxhdpi и xxxhdpi. Для него платформа будет уменьшать xxxhdpi ресурсы, но если те не доступны, то он будет увеличивать xxhdpi.

Статистика версий за апрель 2015

Нельзя просто так взять и перестать поддерживать предыдущие версии

● Добавлены AppCompat widget (AppCompatTextView, AppCompatButton и др.)

● Обновлен AppCompatActivity в качестве базового класса для activity. Заменяет устаревший ActionBarActivity

● Добавлен интерфейс AppCompatCallback● Добавлен AppCompatDelegate● Добавлен AppCompatDialog

Android Support Design

● Navigation View (для Navigation Drawer) — панель

навигации

● Floating Labels (для EditText) — плавающий ярлык

● Floating Action Button (FAB) — плавающая кнопка

● Snackbar — всплывающее уведомление с кнопкой

● Tabs — вкладки

● CoordinatorLayout — новая разметка

Navigation View

app:headerLayout —

устанавливает (опционально)

макет, используемый для заголовка

app:menu подключает ресурсы

меню для элементов навигации

(которые также могут обновляться

во время выполнения)

Простое меню

Меню с категориям

Floating Labels для EditText

Можно теперь обернуть EditText в TextInputLayout, и текст подсказки отобразится в floating label выше EditText, демонстрируя пользователю подсказку во время ввода.В дополнение к подсказке, можно отобразить сообщение об ошибке ниже EditText путем вызова метода setError().

Snackbar

Обратите внимание на первый параметр метода make() - он определяет корневой View, по нижней границе которого будет отображаться всплывающее сообщение.

TabLayout

Разметка в которой можно программно создавать вкладки

Если вы используете ViewPager для горизонтального свайпа между вкладками, вы можете создать вкладки прямо в вашем PagerAdapter методом getPageTitle() и затем соединить вместе, используя setupWithViewPager(). Это гарантирует, что при выборе заголовка ViewPager обновит содержимое выбранной вкладки.

CoordinatorLayoutЦитата из документации:“CoordinatorLayout is a super-powered FrameLayout.”

В чем же сила?

CoordinatorLayout и Toolbar

Использование AppBarLayout в сочетании с Toolbar и другими View (например, вкладкам, созданным через TabLayout) позволяет реагировать на события прокрутки в родственном View, отмеченном как ScrollingViewBehavior.

Спасибо за внимание!

github.com/Witgelm/DesignSupport

Recommended