7 Ekim 2015 Çarşamba

#ANDROID - SharedPreference ile Veri Kaydetme ve Gösterme

  Hiç yorum yok
SharedPreference basit tipteki verileri saklamamızda bize yardımcı oluyor. String, boolean, int... daha nice basit yapıdaki veriyi saklayabiliriz ve istediğimiz zaman bu verileri çekip kullanabiliriz. Bu veriler kullanıcı uygulamayı telefonundan kaldırana kadar korunur.



Ekran görüntüsünde de gördüğünüz gibi EditText, Button ve TextView nesnelerimiz mevcut. EditText'e girilen veriyi kaydet butonumuzla kaydedeceğiz. Daha sonra veri getir butonumuzla kaydettiğimiz bu veriyi TextView alanımızda göstereceğiz.

sharedpreference.xml ve SharedPrefs.java dosyalarımızı oluşturuyoruz.

sharedpreference.xml dosyası:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<EditText
android:id="@+id/etData"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
</EditText>

<Button
android:id="@+id/bKaydet"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="Kaydet" />

<Button
android:id="@+id/bGetir"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="Veri Getir" />

<TextView
android:id="@+id/tvSonuclar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="TextView" />

</LinearLayout>

SharedPrefs.java dosyası:

package com.hakancengiz.blogders;

import android.app.Activity;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class SharedPrefs extends Activity implements View.OnClickListener {

Button kaydet, getir;
EditText kaydedilecekVeri;
TextView ekranaYaz;
SharedPreferences paylasilanTercihler;

@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.sharedpreference);

ilkleme();
paylasilanTercihler = getSharedPreferences("verilerim", MODE_PRIVATE);

}

private void ilkleme() {
kaydet = (Button) findViewById(R.id.bKaydet);
getir = (Button) findViewById(R.id.bGetir);
kaydedilecekVeri = (EditText) findViewById(R.id.etData);
ekranaYaz = (TextView) findViewById(R.id.tvSonuclar);

kaydet.setOnClickListener(this);
getir.setOnClickListener(this);
}

@Override
public void onClick(View v) {

switch (v.getId())
{
case R.id.bKaydet:
String gelenVeri = kaydedilecekVeri.getText().toString();
SharedPreferences.Editor editorum = paylasilanTercihler.edit();
editorum.putString("stringVerisi", gelenVeri);
editorum.commit();
break;

case R.id.bGetir:
paylasilanTercihler = getSharedPreferences("verilerim", MODE_PRIVATE);
String okunanVeri = "";
okunanVeri = paylasilanTercihler.getString("stringVerisi", "Veri bulunamadı.");
ekranaYaz.setText(okunanVeri);
break;
}

}
}

Bu uygulamada bir "stringVerisi" kaydettik ve bu veriyi TextView'e yazdırdık. Son olarak activitymizi AndroidManifest.xml dosyasında tanıtmayı unutmayalım.

Hiç yorum yok :

Yorum Gönder