Создание новой Activity
Создадим страницу для отображения списка пользователей, доступную по кнопке «Контакты». Кнопка «Главное» возвращает на главную страницу.
Создайте новую Activity: File > New > Activity > Empty Activity. Назовите её ContactsActivity. Оставьте настройки пакета и языка программирования по умолчанию.
Скопируйте код из основной Activity и добавьте его во вторую Activity или вручную добавьте основные элементы, например, ConstraintLayout, оставив настройки без изменений. Удалите из макета ContactsActivity все кнопки и текстовые поля, оставив нижнее меню и шапку. Добавьте объект ListView ниже шапки, установив его высоту в 100dp и отступы: marginTop — 50dp, marginLeft и marginRight — 20dp.
Добавление функционала кнопок
Создайте методы для переключения между Activity:
В ContactsActivity:
public void goHome(View view) {
Intent intent = new Intent(this, MainActivity.class);
startActivity(intent);
}
В MainActivity:
public void goContacts(View view) {
Intent intent = new Intent(this, ContactsActivity.class);
startActivity(intent);
}
Добавьте обработчики событий onClick для кнопок «Главное» и «Контакты», вызывая соответствующие методы.
Вывод информации в ListView
Добавьте ListView в макет ContactsActivity, разместив его над нижним меню. Установите необходимые отступы. Задайте ему id: listView.
В ContactsActivity, создайте массив строк:
String[] names = {"John", "George", "Bob", "Oleg"};
Получите ссылку на ListView:
ListView listView = findViewById(R.id.listView);
Создайте и установите адаптер:
ArrayAdapter<String> adapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, names);
listView.setAdapter(adapter);
Кастомный дизайн элемента списка
Создайте XML-файл макета (например, item_name.xml) для кастомного дизайна элемента списка. Можно использовать любой layout (например, RelativeLayout). Добавьте TextView с id userName для отображения имени и кнопку «Удалить». Укажите стили по вашему усмотрению.
Замените стандартный адаптер на кастомный, указав новый layout и id TextView:
ArrayAdapter<String> adapter = new ArrayAdapter<>(this, R.layout.item_name, R.id.userName, names);
listView.setAdapter(adapter);
После запуска приложения, массив данных будет корректно отображен, используя созданный кастомный дизайн.
Мы научились обрабатывать массивы данных и выводить их в ListView, используя стандартный и кастомный дизайн элементов списка. Это позволяет создавать более гибкие и настраиваемые интерфейсы для Android-приложений.