Kotlin LiveData Kullanımı

Hanife Kurnaz
2 min readJun 5, 2020

--

Bu yazımda Android Architecture Components’in bir parçası olan LiveData’dan bahsedeceğim. Android Architecture Components hakkında bilginiz yoksa linke tıklayarak inceleyebilirsiniz.

LiveData Nedir?

LiveData, bir verideki değişiklikleri izlememizi sağlayan Observable veri tutucudur. LiveData, lifecycle aware’dir. Yani Activity, Fragment ya da Servis gibi bileşenlerin yaşam döngülerine karşılık hareket edebilir. Bu özellik LiveData’nın sadece aktif yaşam döngüsündeki bileşenlerin gözlemleyicilerini güncelleştirmesini sağlar. Bu davranış, nesnenin sızmasının önlenmesini, uygulamanın olması gerekenden daha fazla iş yapmamasını ve ekran döndürme gibi durumlarda en son kaydedilen verilerin saklanmasını sağlar. Daha iyi anlamak için bir örnek yapalım.

Butona tıklandıkça TextView’deki değeri arttıran basit bir proje yapacağız. Yeni bir proje oluşturalım ve gradle dosyasının içerisine aşağıdaki satırları ekleyelim.

implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0'

UI tarafından ihtiyaç duyulan Observable değişkenler View Model içerisinden sağlanır. Bunun için View Model sınıfımızı oluşturalım.

Sayı değerini tutmak için integer bir count değişkeni tanımlayalım. Daha sonra integer değeri tutmak için LiveData objesi oluşturalım. Oluşturduğumuz integer değişkeninin değerini arttırmak ve LiveData’nın içeriğini güncellemek için getCount() methodunu oluşturalım. Şimdi MainActivity’e geçebiliriz.

MainActivity içerisinden count değişkenine erişebilmek için View Model nesnesi oluşturmamız gerekir. Count değişkeninin değeri başlangıçta 0'dır ve butona tıklandığında getCount() methoduna erişilerek bu değer arttırılmaktadır. Count değişkeninde oluşan değişiklikleri gözlemlememiz gerekir. LiveData, count değişkeninin değerini gözlemler ve TextView’e atamamızı sağlar.

Şimdi uygulamayı çalıştırıp test edebiliriz. Ekranı döndürdüğümüzde count değeri değişmeyecektir. İyi çalışmalar..

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

--

--

Hanife Kurnaz
Hanife Kurnaz

No responses yet

Write a response