Flutter Dev نشر 23 يونيو 2020 أرسل تقرير نشر 23 يونيو 2020 السلام عليكم ورحمة الله وبركاته تحيه طيبه للجميع لدي استفسار انا عامل SharedPreferences لحفظ البيانات من edittext لما اخرج من الاكتفتي او انتقل اكتفتي ثاني لا يتم حذف البيانات الكود شغال ميه ميه المشكلة فقط الكود حاليا يعمل لدى edittext1 مثلا ولكن انا لدي اكثر من حقل edittext3 ,edittext1,edittext1 final SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(this); editText.setText(pref.getString(LAST_TEXT, "")); editText1.setText(pref.getString(LAST_TEXT2, "")); editText2.setText(pref.getString(LAST_TEXT3, "")); editText3.setText(pref.getString(LAST_TEXT4, "")); editText4.setText(pref.getString(LAST_TEXT5, "")); editText5.setText(pref.getString(LAST_TEXT6, "")); editText.addTextChangedListener(new TextWatcher() { @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { } @Override public void onTextChanged(CharSequence s, int start, int before, int count) { } @Override public void afterTextChanged(Editable s) { pref.edit().putString(LAST_TEXT, s.toString()).commit(); pref.edit().putString(LAST_TEXT2, s.toString()).commit(); pref.edit().putString(LAST_TEXT3, s.toString()).commit(); pref.edit().putString(LAST_TEXT4, s.toString()).commit(); pref.edit().putString(LAST_TEXT5, s.toString()).commit(); pref.edit().putString(LAST_TEXT6, s.toString()).commit(); pref.edit().putString(LAST_TEXT7, s.toString()).commit(); } }); لو عملته بشكل التالي رح يعمل في اول حقل فقط كيف ممكن اضيف جميع الحقول ؟ اكثر طريقة مختصره ممكن للكود لو تكرمتو الي معه فكره احتاج اقتباس
1 سمير عبود نشر 23 يونيو 2020 أرسل تقرير نشر 23 يونيو 2020 مرحبا مروان أنا لم أفهم جيداً ما الذي تريد عمله لكن حالياً أنت قمت بإضافة listener للحقل الأول فقط فإذا تغير هذا الحقل يتم حفظ القيمة الجديدة بأكثر من key و عند عملية الجلب ستكون القيمة نفسها في كل الحقول إذا كنت تريد حفظ البيانات كلها لكل الحقول يجب إضافة أكثر من listener أي لكل حقل أو يمكنك إضافة زر لحفظ كل البيانات يعني عند الضغط على الزر تجلب بيانات الحقول و تقوم بحفظها في ال SharedPreferences وإضافة زر آخر لجلب البيانات ووضعها في الحقول وسيتم جلب البيانات المخزنة في SharedPreferences يمكنك الإستعانة بهذا الفيديو الذي يشرح عن كيفية خزن و جلب البيانات في الهاتف بإستعمال SharedPreferences إذا لم يكن هذا ما تريد رجاءً إشرح جيداً و سنُساعدك بالتوفيق 1 اقتباس
0 عبدالرشيد احمد نشر 24 يونيو 2020 أرسل تقرير نشر 24 يونيو 2020 (معدل) وعليكم السلام ورحمه الله وبركاته، أضن SharedPreferences يمكن استعماله لخفض بيانات لاستعمال في اي جزء من البرنامج. في طرق غير لتحويل المعلومات من شاشة لشاشة. اذا تريد تحويل معلومات في String من Activity الى Activity استعمل putExtra. مثال في اكتيفيتي الاولى: : String text1 = editText.getText().toString(); Intent intent = new Intent(MainActivity.this, Activity2.class); intent.putExtra("text1", text1); startActivity(intent); بعدين في اكتيفيتي الثانية: editText.setText(getIntent().getStringExtra("text1")); و اذا تريد تحويل معلومات في String من Fragment الى Fragment استعمل Bundle. مثال في فراجمنت الاولى: // بعد انشاء و ابداء الفراجمنت String text1 = editText.getText().toString(); Bundle bundle = new Bundle(); bundle.putString("text1", text1); fragmentName.setArguments(bundle); بعدين في فراجمنت الثانية: Bundle bundle = getArguments(); if(bundle! = null){ editText.setText(bundle.getString("text1")); } تم التعديل في 24 يونيو 2020 بواسطة عبدالرشيد احمد اضفت السلام. 1 اقتباس
0 Flutter Dev نشر 24 يونيو 2020 الكاتب أرسل تقرير نشر 24 يونيو 2020 (معدل) هلا بيك عزيزي @عبود سمير ( يجب إضافة أكثر من listener ) هذا المشكلة لو عملت كذا بيكون الكود طويل جدا في حالة لدي كمية كبيره من حقول الادخال ولكني ساجرب طريقة الفيديو اعتقد اني فهمت طريقة ويمكن الاستعانه بها @عبدالرشيد احمد هلا بيك اخوي لا اخي لا احتاج الى نقل البيانات الى اكتفتي مختلف انا فقط احاول حفظ حالة الاكتفتي لو فتحت اكتفتي ثاني تم التعديل في 24 يونيو 2020 بواسطة مروان مروان3 اقتباس
0 Flutter Dev نشر 24 يونيو 2020 الكاتب أرسل تقرير نشر 24 يونيو 2020 @عبود سميراعتذر ولكن توجد مشكلة الطريقة المذكوره في الفيديو ايضا لا يمكن تطبيقها على اكثر من حقل ادخال واحد لما قمت بعمل اكثر من حقل لم تحفظ البيانات ابد اقتباس
0 Flutter Dev نشر 24 يونيو 2020 الكاتب أرسل تقرير نشر 24 يونيو 2020 تم حل المشكلة ولله الحمد شكرا لكم 2 اقتباس
السؤال
Flutter Dev
السلام عليكم ورحمة الله وبركاته
تحيه طيبه للجميع
لدي استفسار انا عامل SharedPreferences لحفظ البيانات من edittext لما اخرج من الاكتفتي او انتقل اكتفتي ثاني لا يتم حذف البيانات الكود شغال ميه ميه المشكلة فقط الكود حاليا يعمل لدى edittext1 مثلا ولكن انا لدي اكثر من حقل edittext3 ,edittext1,edittext1
لو عملته بشكل التالي رح يعمل في اول حقل فقط
كيف ممكن اضيف جميع الحقول ؟ اكثر طريقة مختصره ممكن للكود لو تكرمتو الي معه فكره احتاج
5 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.