بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ

سیو ارایه در پریفرنس

مدیریت گفتگو
sjj 11 سال پیش
آخرین تغییر: 11 سال پیش

سلام دوستان . خواهش دارم اگر کسی اطلاع داره کمک کنه
چطور میشه ارایه اینتیجر رو داخل پریفرنس سیو و باز خونی کرد.
ممنون میشم کمک کنید.

نظرات

sjj 11 سال پیش
راستش من این لینک رو قبلا دیده و استفاده کرده بودم ولی نتیجه نگرفتم این فقط توضیح کوچیکی داده که ذخیره به این شکله توضیحی راجع به فراخوانیش نداده شما نتیجه گرفتید ممنون میشم کدتون رو بنویسید

پاسخ‌ها 2

وحید 11 سال پیش

ببینید من از یک روشی استفاده کردم که به زودی آموزش ویدئوییش رو هم می ذارم. (البته نمی دونم چقدر استاندارد هست)

چون خودم خیلی گیر کرده بودم و نمی تونم در اینجا الآن بحث رو توضیح بدم. سایت کلیدستان رو هم دیدم اما 40 درصد کمکم کرد.

نظرات

Hajhosseini 11 سال پیش

راه اول:

 //Retrieve the values
Set<String> set = myScores.getStringSet("key", null);

//Set the values
Set<String> set = new HashSet<String>();
set.addAll(listOfExistingScores);
scoreEditor.putStringSet("key", set);
scoreEditor.commit();

روش اول فقط از Api 11 به بعد کار میکنه.
راه دوم (من پیشنهاد میکنم) باید از Serializable استفاده کنید:

 public void addTask(Task t) {
        if (null == currentTasks) {
            currentTasks = new ArrayList<task>();
        }
        currentTasks.add(t);

        //save the task list to preference
        SharedPreferences prefs = getSharedPreferences(SHARED_PREFS_FILE, Context.MODE_PRIVATE);
        Editor editor = prefs.edit();
        try {
            editor.putString(TASKS, ObjectSerializer.serialize(currentTasks));
        } catch (IOException e) {
            e.printStackTrace();
        }
        editor.commit();
    }

و به این صورت دیتا رو بگیرید:

 public void onCreate() {
        super.onCreate();
        if (null == currentTasks) {
            currentTasks = new ArrayList<task>();
        }

        //      load tasks from preference
        SharedPreferences prefs = getSharedPreferences(SHARED_PREFS_FILE, Context.MODE_PRIVATE);

        try {
            currentTasks = (ArrayList<task>) ObjectSerializer.deserialize(prefs.getString(TASKS, ObjectSerializer.serialize(new ArrayList<task>())));
        } catch (IOException e) {
            e.printStackTrace();
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }

نظرات


پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .