Android SharedPrefences ile Veri Kaydetme
Android programlamada veri kaydetmek birçok projemizde kullanmamız gereken bir durumdur. Developerlar için 3 çeşit veri kaydetme seçeneği sunulmuştur.
- SharedPefences
- Dosya işlemleri
- Veri Tabanı (SQLite)
Biz bu makalemizde SharedPrefencesler ile veri kaydetmeyi göreceğiz. İlk önce yeni bir proje açıyorum. Bu projemde 1 edittext, 2 buton ve 1 adet de textview olacak. veritabanı gibi herhangi bir işleme girmeden edittext’ten alacağımız veriyi butonların yardımıyla textview’de göstereceğim.
İlk başta yapacağımız iş bir SharedPrefences ve dosya tanımlamak olacak. Dosya aslında var olmayacak ancak veri aktarımında dosyadan faydalanacağız. Bunu
1
2
| public static String dosyaadi = "deneme" ; SharedPreferences sharedVeri; |
kodlarıyla onCreate metodunun hemen altına yazıyoruz. Ardından onCreate metodumuzun içine butonları, textview, edittext’i tanıtıyoruz. Ardından onCreate içerisine
1
| sharedVeri = getSharedPreferences(dosyaadi, 0); |
kodumuzla SharedPrefences’ı alıyoruz. Burada dosyaadi en başta oluşturduğumuz dosya, “0″ ise default mode’u yani MODE_PRIVATE modunu temsil ediyor.Diğer modlar ise
Bunlara daha sonra değineceğim. Uygulamamıza geri dönüyoruz. Kaydet butonumuzun onClick() metoduna
1
2
3
4
| String alinanveri = etVeri. getText ().toString(); SharedPreferences.Editor editor = sharedVeri.edit(); editor.putString( "key" , alinanveri); editor.commit(); |
kodlarını yazıyoruz. Burada bir editor oluşturup aldığımız verileri bu editör yardımıyla değiştirmemiz gerekiyor. putString yardımıyla da key-value ilişkisini kuruyoruz. Hepsi bu kadar şimdi programımızı çalıştırabiliriz.
Artık programımızı çalıştırabiliriz. İlk başta gelen ekranda edittext’e deneme yazıyorum.
Daha sonra kaydet ve veriyi al diyorum ve textview’e SharedPrefences yardımıyla veriyi aktarmış oluyorum.
Xml ve Java kodlarımızı aşağıya ekliyorum. Herkese kolay gelsin.
activity_shared.xml
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
27
28
29
30
31
32
33
34
35
36
37
38
39
| <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= "wrap_content" 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= ".SharedActivity" > <TextView android:id= "@+id/tvGoster" android:layout_width= "match_parent" android:layout_height= "wrap_content" android:layout_alignLeft= "@+id/bVeri" android:layout_below= "@+id/bVeri" android:text= "TextView" /> <EditText android:id= "@+id/etShared" android:layout_width= "wrap_content" android:layout_height= "wrap_content" android:layout_alignParentLeft= "true" android:layout_alignParentTop= "true" android:ems= "10" > </EditText> <Button android:id= "@+id/bKaydet" android:layout_width= "wrap_content" android:layout_height= "wrap_content" android:layout_alignLeft= "@+id/etShared" android:layout_below= "@+id/etShared" android:text= "Kaydet" /> <Button android:id= "@+id/bVeri" android:layout_width= "wrap_content" android:layout_height= "wrap_content" android:layout_alignLeft= "@+id/bKaydet" android:layout_below= "@+id/bKaydet" android:text= "Veriyi al" /> </RelativeLayout> |
SharedActivity.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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
| package com.ornek.sharedpref; import android.os.Bundle; import android.app.Activity; import android.content.SharedPreferences; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; public class SharedActivity extends Activity implements OnClickListener{ EditText etVeri; TextView goster; Button kaydet,verial; public static String dosyaadi = "deneme" ; SharedPreferences sharedVeri; @Override protected void onCreate(Bundle savedInstanceState) { super .onCreate(savedInstanceState); setContentView(R.layout.activity_shared); sharedVeri = getSharedPreferences(dosyaadi, 0 ); kaydet = (Button)findViewById(R.id.bKaydet); verial = (Button)findViewById(R.id.bVeri); goster = (TextView)findViewById(R.id.tvGoster); etVeri = (EditText)findViewById(R.id.etShared); kaydet.setOnClickListener( this ); verial.setOnClickListener( this ); } @Override public void onClick(View v) { // TODO Auto-generated method stub switch (v.getId()) { case R.id.bKaydet: String alinanveri = etVeri.getText().toString(); SharedPreferences.Editor editor = sharedVeri.edit(); editor.putString( "key" , alinanveri); editor.commit(); break ; case R.id.bVeri: sharedVeri = getSharedPreferences(dosyaadi, 0 ); String geridonenveri = sharedVeri.getString( "key" , "yükleme basarisiz" ); goster.setText(geridonenveri); break ; } } } |
KodBankasi.Org
Android SharedPrefences ile Veri Kaydetme
Reviewed by Unknown
on
03:58
Rating:
Hiç yorum yok: