تالار گفتمان nCIS.ir

نسخه‌ی کامل: ذخیره نکردن تنظیمات در SharedPreferences ها
شما در حال مشاهده نسخه آرشیو هستید. برای مشاهده نسخه کامل کلیک کنید.
با سلام،استاد من یه همچین کدی رو نوشتم که موقعی که کاربر توی EditText متن وارد میکنه،متن رو بگیره و دفعه بعدی که وارد برنامه میشه اون متن هنوز سره جاش باشه.اما متاسفانه عمل نمیکنه،میشه بگین مشکل کجاست؟

package com.motivational.home.a;

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


public class MainActivity extends AppCompatActivity {
    public static final String prefs = "myprefs";
    public static final String keyput = "keyput";
    EditText edt;
    SharedPreferences shp;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        edt = (EditText) findViewById(R.id.edt);
        shp = getSharedPreferences(prefs, MODE_PRIVATE);

        findViewById(R.id.btn).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                String data = edt.getText().toString();


                SharedPreferences.Editor editor = shp.edit();
                editor.putString(keyput, data);
                editor.apply();
            }
        });


    }
}
شما فقط ذخیره کردین. باید هربار برنامه اجرا میشه بخونین و توی کادر متن بگذارین:
edt.setText(shp.getString(keyput, ""));