Türkiye Drone Ligi başlıyor

Artık Youtube’un da okulu var

Youtube Videolarını Arkadaşlarınızla Birlikte Canlı İzleyin!

28. Yılını Kutlayan WWW.’nin Yaratıcısından Ciddi Uyarı!

Android SharedPreferences Kullanımı – [ Android Studio ]

Android Programlama 23 Mart 2016
362 Görüntülenme

Android tabanlı herhangi bir uygulama veya projeniz varsa ve size geçici bir hafıza gerekiyorsa bunu SharedPreferences yöntemini kullanarak sorunu çözebilirsiniz. SharedPreferences uygulamalarınızda bir nevi geçici veritabanı gibi çalışır. Bu örneğimizde kullanıcının edittext’e girdiği veriyi SharedPreferences yöntemi ile kayıt edeceğiz ve daha sonra bu veriyi ekrana yazıdıracağız.

İlk olarak gerekli kütüphanelerimizi dahil edecelim.

import android.content.SharedPreferences;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

Daha sonra Button, TextView, EditText,  SharedPreferences, SharedPreferences.Editor türlerinde değişken tanımladık.

SharedPreferences webinyoPref;
SharedPreferences.Editor editor;

Button btnKaydet,btnGetir;
TextView veriyiEkranaYaz;
EditText icerikGir;

Devam edersek .xml dosyasında yerleştirmiş olduğumuz elemanlarımızı biraz önce tanımlamış olduğumuz değişkenlere atıyoruz ki kullanalım.

webinyoPref = getApplicationContext().getSharedPreferences("VeriSakla", MODE_PRIVATE);
        editor = webinyoPref.edit();

            // NESNELERİMİZİ DEĞİŞKENLERİMİZE ATADIK
        btnKaydet = (Button) findViewById(R.id.kaydet);
        btnGetir = (Button) findViewById(R.id.getir);
        icerikGir   =   (EditText) findViewById(R.id.editText);
        veriyiEkranaYaz   =   (TextView) findViewById(R.id.ekranaYaz);

Sonrasında tanımladığımı butonlara tıklandığında ne iş yapacağına karar veriyoruz. btnKaydet değişkene tıklandığında editText içerisindeki veriyi “editPref” isimli SharedPreferences değişkenine atıyor ve kayıt ediyor.

btnKaydet.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
            // EDİTTEXT'E GİRİLEN DEĞERİ ALDIK
        String girilenVeri = icerikGir.getText().toString();
            // GİRİLEN DEĞERİ editPref isimli SHAREDPREF DEĞİŞKENİNE ATADIK
        editor.putString("editPref", girilenVeri);
        editor.commit();
    }
});

Son olarak btnGetir değişkenine tıkladığında SharedPreferences yöntemi ile saklamış olduğumuz veriyi ekrana yazdırıyoruz.

btnGetir.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                    // DAHA ÖNCEDEN TANIMLAMIŞ OLDUĞUMUZ editPref İSİMLİ VERİYİ ÇAĞIRIP EKRANA YAZIDIRIYORUZ.
                String myString = webinyoPref.getString("editPref", "N/A");
                veriyiEkranaYaz.setText(myString);

            }
        });

Tam Kodlarımız.

MainActivity.java Dosyasındaki Kodlar
package com.android.webinyo.sharedpreferenceskullanimi;

import android.content.Intent;
import android.content.SharedPreferences;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {

        // DEĞİŞKENLERİ TANIMLIYORUZ
    SharedPreferences webinyoPref;
    SharedPreferences.Editor editor;

    Button btnKaydet,btnGetir;
    TextView veriyiEkranaYaz;
    EditText icerikGir;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

            // VeriSakla ADINDA BİR SHAREDPREF TANIMLADIK
        webinyoPref = getApplicationContext().getSharedPreferences("VeriSakla", MODE_PRIVATE);
        editor = webinyoPref.edit();

            // NESNELERİMİZİ DEĞİŞKENLERİMİZE ATADIK
        btnKaydet = (Button) findViewById(R.id.kaydet);
        btnGetir = (Button) findViewById(R.id.getir);
        icerikGir   =   (EditText) findViewById(R.id.editText);
        veriyiEkranaYaz   =   (TextView) findViewById(R.id.ekranaYaz);

            // btnKaydet İSİMLİ BUTONA TIKLAMA İŞLEMİ
        btnKaydet.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                    // EDİTTEXT'E GİRİLEN DEĞERİ ALDIK
                String girilenVeri = icerikGir.getText().toString();
                    // GİRİLEN DEĞERİ editPref isimli SHAREDPREF DEĞİŞKENİNE ATADIK
                editor.putString("editPref", girilenVeri);
                editor.commit();
            }
        });

        btnGetir.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                    // DAHA ÖNCEDEN TANIMLAMIŞ OLDUĞUMUZ editPref İSİMLİ VERİYİ ÇAĞIRIP EKRANA YAZIDIRIYORUZ.
                String myString = webinyoPref.getString("editPref", "N/A");
                veriyiEkranaYaz.setText(myString);

            }
        });


    }
}
activity_main.xml Dosyasındaki Kodlar
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.android.webinyo.sharedpreferenceskullanimi.MainActivity">

    <EditText
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/editText"
        android:gravity="center"
        android:layout_marginTop="28dp"
        android:layout_below="@+id/aciklama"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true" />

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:text="SharedPreferences kullanımı"
        android:gravity="center"
        android:id="@+id/textView"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true" />

    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="KAYDET"
        android:id="@+id/kaydet"
        android:gravity="center"
        android:layout_marginTop="28dp"
        android:layout_below="@+id/editText"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true" />

    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="GETİR"
        android:id="@+id/getir"
        android:gravity="center"
        android:layout_centerVertical="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" />

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:id="@+id/ekranaYaz"
        android:gravity="center"
        android:layout_below="@+id/getir"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="88dp" />

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:text="Lütfen SharedPreferences yöntemini test etmek için birşeyler girin."
        android:id="@+id/aciklama"
        android:gravity="center"
        android:layout_marginTop="31dp"
        android:layout_below="@+id/textView"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true" />

</RelativeLayout>

 

 

Yorumlar

Henüz hiç yorum yapılmamış.

İlginizi Çekebilir
Android – Time Zone Uygulaması Yapımı

Android – Time Zone Uygulaması Yapımı

6 Eylül 2016
872 Görüntülenme
Android İnterneti Kontrol Etmek için Gerekli Kod

Android İnterneti Kontrol Etmek için Gerekli Kod

3 Eylül 2016
416 Görüntülenme
Android Video Oynatma Kaynak Kodu

Android Video Oynatma Kaynak Kodu

30 Ağustos 2016
506 Görüntülenme
Android Açılış Ekranı Yapımı

Android Açılış Ekranı Yapımı

27 Ağustos 2016
674 Görüntülenme
Android Buton Tıklama Kodu

Android Buton Tıklama Kodu

25 Ağustos 2016
403 Görüntülenme
Android Ekran Yenileme ( Reflesh ) Kodu

Android Ekran Yenileme ( Reflesh ) Kodu

25 Ağustos 2016
658 Görüntülenme
Android Wifi Açma Kodu

Android Wifi Açma Kodu

24 Ağustos 2016
448 Görüntülenme
Android Sayfalar Arası Geçiş – [ Android Studio ]

Android Sayfalar Arası Geçiş – [ Android Studio ]

19 Mart 2016
1.318 Görüntülenme
Bunlar da var!
Ford F150 Pikap [Video]

Ford F150 Pikap [Video]

21 Eylül 2015
243 Görüntülenme
Jason Stathamdan Fast and Furious 8 açıklaması

Jason Stathamdan Fast and Furious 8 açıklaması

26 Haziran 2015
234 Görüntülenme
Sadeceon, Sina Afradan 500 bin TL yatırım aldı

Sadeceon, Sina Afradan 500 bin TL yatırım aldı

7 Ekim 2015
304 Görüntülenme