Kotlin’de List, RecyclerView ve Adapter Kullanımı

Kotlin’de Yapılar

Adile Güngör ♾️ 🌎
Women in Technology
2 min readAug 16, 2023

--

Merhaba! Ben Kotlin ile Android Programlama Akademisi katılımcılarından Adile Güngör. Kotlin ile Android Programlama Akademisi, “Afetten Etkilenen Yazılımcı Gençlerin Güçlenmesi ve İstihdama Erişimi Projesi”, Sivil Toplum için Destek Vakfı ve Turkey Mozaik Foundation iş birliği ile hayata geçirilen Yerel Güçlenmeye Destek Fonu kapsamında sağlanan hibe desteğiyle gerçekleştirilmektedir.

Bugün sizle Kotlin ile veri listesi oluşturmayı ve bu verileri kullanıcı arayüzünde göstermeyi öğreneceğiz. Bunun için List, RecyclerView ve Adapter yapılarını kullanacağız. Bilirsiniz, örnek üzerinden anlatmayı severim, çünkü daha kolay anlaşılır diye düşünürüm. Öyleyse, bu konuyu futbolcu verileri üzerinden anlatalım.

Photo by Jeffrey F Lin on Unsplash

Futbolcu Veri Modeli

Öncelikle, her bir futbolcunun adını, takımını ve yaşını içerecek şekilde bir veri modeli oluşturalım:

data class Futbolcu(val ad: String, val takim: String, val yas: Int)

Bu veri modeli, her bir futbolcunun temel özelliklerini taşıyacak.

Futbolcu Listesi Oluşturma

Futbolcuları temsil eden bir liste oluşturalım:

val futbolcuListesi = listOf(
Futbolcu("Megan Rapinoe", "OL Reign", 36),
Futbolcu("Alex Morgan", "San Diego NWSL", 32),
Futbolcu("Ada Hegerberg", "Olympique Lyonnais", 26),
Futbolcu("Sam Kerr", "Chelsea FC Women", 28),
Futbolcu("Wendie Renard", "Olympique Lyonnais", 31)
)

Bu liste, farklı takımlarda oynayan ve farklı yaşlara sahip futbolcuları içerecek.

RecyclerView ve Adapter Kullanımı

Verilerimizi kullanıcı arayüzünde düzenli bir şekilde göstermek için RecyclerView ve Adapter yapılarını kullanacağız. Verileri göstereceğimiz RecyclerView bileşenini tanımlayalım:

xml
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recyclerView"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
/>

Bu bileşen, verilerimizin nasıl görüntüleneceğini ve düzenleneceğini belirler.

Adapter:

Adapter sınıfını oluşturalım. Adapter, verileri RecyclerView bileşenine bağlamamızı sağlar:

class FutbolcuAdapter(private val futbolcuListesi: List<Futbolcu>) : RecyclerView.Adapter<FutbolcuViewHolder>() {
// …
}

Adapter, verilerin görüntülenmesini sağlamak üzere gerekli yönergeleri içerir. Adapter sınıfını oluşturduktan sonra, verileri görüntülemek için onBindViewHolder fonksiyonunu kullanacağız:

override fun onBindViewHolder(holder: FutbolcuViewHolder, position: Int) {
val futbolcu = futbolcuListesi[position]
holder.itemView.adTextView.text = futbolcu.ad
holder.itemView.takimTextView.text = futbolcu.takim
holder.itemView.yasTextView.text = futbolcu.yas.toString()
}

Bu kod, her bir futbolcunun adını, takımını ve yaşını ilgili görüntü öğelerine yerleştirir.

Son adımda, RecyclerView ve Adapter yapılarını kullanarak verilerimizi kullanıcı arayüzünde göstermeye başlayacağız:

val futbolcuListesi = listOf(
Futbolcu("Megan Rapinoe", "OL Reign", 36),
Futbolcu("Alex Morgan", "San Diego NWSL", 32),
Futbolcu("Ada Hegerberg", "Olympique Lyonnais", 26),
Futbolcu("Sam Kerr", "Chelsea FC Women", 28),
Futbolcu("Wendie Renard", "Olympique Lyonnais", 31)
)val adapter = FutbolcuAdapter(futbolcuListesi)
recyclerView.adapter = adapter

Bu kod, RecyclerView ile verimizi bağlar ve Adapter üzerinden görüntülememizi sağlar.

Umarım keyifli olmuştur. Hayırlı kodlamalar mı diyelim! Dedik bile. Diğer yazılarımızda görüşelim.

Dilerseniz GitHub ve Linkedin profilime göz atabilirsiniz. Ve sorularınızı iletebilirsiniz. Sevgiler.

--

--