Java в среде Android

Слайд 2

Задача: создать разметку и реализовать работу сущности как визуального и логического

Задача: создать разметку и реализовать работу сущности как визуального и логического

контейнера в виде модуля XML и Java

Особенности разметки: каждый элемент контейнера занимает все пространство экрана (виджет персонажей + виджет текстового фрагмента + виджет навигации)

Слайд 3

Виджет ViewPager позволяет пользователю делать свайпы (проводить пальцем по экрану с

Виджет ViewPager позволяет пользователю делать свайпы (проводить пальцем по экрану с

одной стороны в другую) по страницам с какими-то данными. Сам ViewPager использует PagerAdapter, который создает компоненты View и заполняет их какими-то переданными данными. По механизму взаимодействия это сравнимо с адаптером ListAdapter и ListView.

PagerAdapter (SliderAdapter) – это базовый абстрактный класс, для которого разработчик дописывает реализацию так, как ему надо. Существует распространенная стандартная (частичная) реализация PagerAdapter, которая работает с фрагментами – это FragmentPagerAdapter. Разработчику остается только создать фрагмент и определить кол-во страниц.

Слайд 4

Установим в макете activity_slide.xml компоновку виджета ViewPager из библиотеки поддержки:

Установим в макете activity_slide.xml компоновку виджета ViewPager из библиотеки поддержки:

Слайд 5

А теперь создадим макет для экрана виджета ViewPager - slider_layout.xml:

А теперь создадим макет для экрана виджета ViewPager - slider_layout.xml:

Слайд 6

Создаем адаптер для виджета ViewPager

Создаем адаптер для виджета ViewPager

Слайд 7

Рассмотрим основные методы, которые мы использовали при работе создании SimplePagerAdapter для

Рассмотрим основные методы, которые мы использовали при работе создании SimplePagerAdapter для

лучшего понимания того, как он работает:
Конструктор SimplePagerAdapter(Context context) принимает в качестве параметра контекст для инициализации переменной класса, которая используется для доступа к данным и создании компонентов View по этим данным.
Метод instantiateItem(ViewGroup viewGroup, int position) использует перечисление, которое соответствует конкретной позиции. Получает с него данные и возвращает сформированный компонент View. В дальнейшем этот объект используется методом isViewFromObject.
Метод destroyItem() удаляет конкретный View из ViewGroup.
Метод getCount() просто возвращает количество View, которые использоваться в ViewPager.
Метод isViewFromObject() проверяет, соответствует ли конкретный объект данной позиции. Как описано чуть выше, второй параметр имеет тип Object и получается из метода instantiateItem().
Метод getPageTitle() возвращает текст для заголовка каждого экрана. В нашей реализации мы не передавали его ActionBar.
Слайд 8

Теперь инициализируем ViewPager готовым адаптером SlideAdapter в методе onCreate() класса InventoryExplorerActivity:

Теперь инициализируем ViewPager готовым адаптером SlideAdapter в методе onCreate() класса InventoryExplorerActivity: