Bu derste Android’ de ListView kullanımını göreceğiz ve dizi içinden verilerin ListView içine nasıl alınabileceğini gösteren bir örnek oluşturacağız. Öncelikle ListView Nedir? sorusunun cevabına bakalım.
Android’de ListView, kaydırılabilir öğelerin listesini birden çok satırda görüntülemek için kullanılan bir ViewGroup’tur ve liste öğeleri bir adaptör kullanılarak otomatik olarak listeye eklenir.
Genellikle bağdaştırıcı, dizi veya veritabanı gibi kaynaklardan veri çeker ve her öğeyi bir sonuç görünümüne dönüştürür ve bu, listeye yerleştirilir.
Android uygulamalarında liste görünümü aşağıdaki gibidir.

Android Adapter
Android’de Adapter, verileri bağdaştırıcı görünümlerine doldurmak için veri kaynakları ile ListView,Gridview gibi bağdaştırıcı görünümleri arasında bir aracı görevi görür. Bağdaştırıcı, verileri tutar ve veri kümesindeki bir öğeyi yineler ve listedeki her öğe için görünümler oluşturur.
Genel olarak, android’de, verileri adaptör görünümlerine doldurmak için farklı veri kaynaklarından verileri almak için farklı türde adaptörlerimiz vardır, bunlar;
Adapter | Açıklama |
---|---|
ArrayAdapter | Girdi olarak bir Dizi veya Liste bekler. |
CursorAdapter | Girdi olarak bir cursor örneğini kabul edecektir. |
SimpleAdapter | Kaynaklarda tanımlanan statik bir veriyi kabul edecektir. |
BaseAdapter | Üç bağdaştırıcı türünün tümü için genel bir uygulamadır ve gereksinimlerimize göre ListView, Gridview veya Spinner’lar için kullanılabilir |
Android ListView Örneği
Android uygulamasında arrayadapter kullanarak bir ListView oluşturma örneği oluşturalım.
Android Studio kullanarak yeni bir android uygulaması oluşturun ve ListView olarak isim verin. Android stüdyosunda bir uygulama oluşturmayı hiç bilmiyorsanız, Android Hello World App makalesine bakın.
Şimdi \res\layout yolundan activity_main.xml dosyasını açın ve aşağıdaki gibi kodları yazın.
activity_main.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <ListView android:id="@+id/userlist" android:layout_width="match_parent" android:layout_height="wrap_content"> </ListView> </LinearLayout> |
Düzen oluşturmayı bitirdikten sonra, şimdi ArrayAdapter kullanarak verileri ListView’e bağlayacağız, \java\example.listview yolundan MainActivity.java ana etkinlik dosyası aşağıdaki kodları yazacağız.
MainActivity.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | package com.example.listview; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.widget.ArrayAdapter; import android.widget.ListView; public class MainActivity extends AppCompatActivity { private ListView pListView; private ArrayAdapter aAdapter; private String[] diller={"C","C#","C++","Python","Java","Kotlin","Swift","Go","JavaScript","Ruby","Unity"}; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); pListView=(ListView)findViewById(R.id.lvprogramlist); aAdapter=new ArrayAdapter(this, android.R.layout.simple_list_item_1,diller); pListView.setAdapter(aAdapter); } } |
Yukarıdaki kodu incelediğinizde ArrayAdapter kullanarak statik bir dizi içindeki (diller) verilerin ListView içerisinde görüntülenmesi için gerekli işlemleri göreceksiniz.
Genellikle, activity başlatılması sırasında gerekli düzeni elde etmek için android tarafından onCreate() metodu kullanılır.
Android ListView Örneğinin Çıktısı
Android sanal cihazı (AVD) kullanarak yukarıdaki örneği çalıştırdığımızda, aşağıda gösterildiği gibi bir sonuç elde edeceğiz.
