Soru & Cevap

Android Stuido Skoru kayıt ettirmek ...

09.06.2016 - 04:23

O an ki text viewdeki yazan sayıyı butona dokunup kayıt ettirmek ve uygulama açılınca baska bir text wievde göstermek istiyorum nasıl yapabilirim ?

35 Görüntülenme

3 Cevap

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.

Profile picture for user impROS
impROS
10.06.2016 - 08:21


SharedPreferences kullanman daha mantıklı ama alternatif bir şey arıyorsan skoru texte yazdırırsın,sonra da textten okursun.Yazarken şu kodu kullanırsın(Kendine göre editlemen gerekebilir)

 

public String read_text() {
        File dir = Environment.getExternalStorageDirectory();
        File file = new File(dir, "settings.txt");

        try {
            FileReader fr = new FileReader(file);
            BufferedReader br = new BufferedReader(fr);
            String str_word;
            String str_all_words = "";
            while ((str_word = br.readLine()) != null) {
                str_all_words += str_word;

            }
            fr.close();
            br.close();
            return str_all_words;

        } catch (FileNotFoundException e) {
            Log.d("Hata1 :", e.getMessage());
        } catch (IOException e) {
            Log.d("Hata2 :", e.getMessage());
        }
        return "";

    }

yazarken de şu şekil

 

public void write_date(String str_date) {
        File file = new File(Environment.getExternalStorageDirectory(), "settings.txt");
        if (file.exists()) {
            file.delete();
        }
        try {
            FileWriter fw = new FileWriter(file, false);
            BufferedWriter bf = new BufferedWriter(fw);

            fw.write(str_date);
            fw.close();
            bf.close();
        } catch (IOException e) {
            Log.d("Hata3 :", e.getMessage());
        }

    }

 

picture-2176-1429627808.jpg
bekirdursun
10.06.2016 - 02:16

Kayıt için;

SharedPreferences sharedPreferences = getSharedPreferences("HighScore",MODE_PRIVATE);
Editor editor = sharedPreferences.edit();
editor.putInt("score", 10); // buradaki 10 yerine o case için belirlenen değer gelecek.
editor.commit();

 

Açılışta göstermek için;

SharedPreferences sharedPreferences = getSharedPreferences("HighScore",MODE_PRIVATE);
score = sharedPreferences.getInt("score", 0);
textview.setText(score);

 

picture-30491-1565085904.jpg
serhatleventyavas
10.06.2016 - 01:01

local bir veritabanında saklamak istiyorsan sqlite arastır dostum. Sunucu tabanlı bir database de saklayacaksan orası daha da karmasık. Web servis yazman gerekecektir.

Bekir Dursun
10.06.2016 - 02:18
böylesine küçük dataları saklamak için sharedpreferences kullanmanı öneririm.