Kotlin Android: Страница товара в ItemActivity

Создадим новую страницу приложения — страницу с подробной информацией о товаре.

Добавление страницы и изменение дизайна ItemsActivity

Добавим в проект новую страницу ItemActivity. Переход на неё будет осуществляться по нажатию на кнопку товара в существующей ItemsActivity. Изменим основной слой (layout) ItemsActivity: добавим уровень и жёлтый фон (как у всего проекта).

Дизайн страницы ItemActivity

Скопируем два TextView из шаблона item_in_list и добавим их в LinearLayout. Они будут отображать название и полное описание товара. Добавим кнопку «Купить» с ID baton_by. Изменим ID первого TextView на item_list_title_one. Дизайн можно дорабатывать.

Обработка нажатия кнопки в ItemsAdapter

В ItemsAdapter создадим переменную для ссылки на кнопку и обработчик события. При нажатии будем переходить на ItemActivity, передавая данные.

Создадим MyViewHolder и переменную типа Button, используя findViewById для поиска кнопки с ID item_list_button. Добавим обработчик событий setOnClickListener. В обработчике создадим объект Intent:

Intent intent = new Intent(context, ItemActivity.class);

Запустим Activity с помощью startActivity:

context.startActivity(intent);

Передадим данные с помощью putExtra: название товара (item_title) и полное описание (item_text):

intent.putExtra("item_title", itemTitle);
intent.putExtra("item_text", itemFullDescription);

Можно передать и другие данные (ID изображения, цену).

Получение и отображение данных в ItemActivity

В ItemActivity найдём элементы дизайна: TextView для заголовка (item_list_title_one) и TextView для текста (item_list_text). Получим данные из Intent с помощью getStringExtra:

String title = getIntent().getStringExtra("item_title");
String text = getIntent().getStringExtra("item_text");

Подставим данные в TextView:

titleTextView.text = title;
textTextView.text = text;

Тестирование

После реализации, нажатие на кнопку товара должно переводить на ItemActivity, отображающую название и описание товара.

Создана страница для детального просмотра товара с передачей данных между активностью списка и страницей описания. Приложение теперь отображает подробную информацию о товарах.

Что будем искать? Например,программа