Android ListView и SeekBar: полное руководство

ListView: Создание и работа со списком

ListView — компонент для отображения списков данных. Добавим ListView в разметку. По умолчанию он занимает всю ширину экрана.

Создадим XML-файл для элементов списка. В папке layout создадим новый файл (New -> XML -> Layout XML File), например, names.xml. Заменим корневой элемент LinearLayout на TextView, поскольку отображаем только текст.

В MainActivity.java создадим переменные:

  • private ListView list; — для списка.
  • String[] names = new String[]{"John", "Bob", "Jane", "Alex"}; — массив имен для отображения.

Добавим обработчик кликов на элементы списка:

list.setOnItemClickListener(new AdapterView.OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        String value = names[position];
        Toast.makeText(MainActivity.this, "Позиция: " + position + ", Значение: " + value, Toast.LENGTH_LONG).show();
    }
});

Свяжем ListView с массивом имен в MainActivity.java:

list = findViewById(R.id.listview);
ArrayAdapter<String> adapter = new ArrayAdapter<>(this, R.layout.names, names);
list.setAdapter(adapter);

R.id.listview — ID компонента ListView в XML-разметке. R.layout.names — путь к файлу names.xml.

При запуске приложения, ListView отобразит элементы из names. Клик на элемент выведет его позицию и значение в виде Toast-сообщения (позиция — индекс в массиве, отсчет с нуля).

SeekBar: Работа с ползунком

SeekBar — ползунок для выбора значения в заданном диапазоне. Добавим SeekBar в разметку.

Для получения значения SeekBar, используем метод getProgress():

SeekBar seekBar = findViewById(R.id.seekBar);
int progress = seekBar.getProgress();

Добавим вывод значения SeekBar в Toast-сообщение вместе с данными из ListView:

Toast.makeText(MainActivity.this, "Позиция: " + position + ", Значение: " + value + ", Прогресс: " + progress, Toast.LENGTH_LONG).show();

Теперь клик на элемент ListView выведет его позицию, значение и текущее значение SeekBar. Максимальное значение SeekBar настраивается через XML-атрибуты.

Урок рассмотрел работу с ListView и SeekBar в Android. Эти компоненты часто используются в приложениях, и знание их работы необходимо для Android-разработчиков.

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