الیاس سخاوتی نیا
4 سال پیش توسط الیاس سخاوتی نیا مطرح شد
6 پاسخ

مشکل در sharedpreferences

@hesammousavi
سلام
عکس زیر رو نگاه کنید

m'lady

اون عبارت نام کاربر (همون Elyas) رو من توی sharedpreferences ذخیره کردم.
حالا وقتی میرم به صفحه تغییر مشخصات و وقتی کاربر اسمش رو تغییر داد منم دوباره توی sharedpreferences اسم رو آپدیت میکنم.
ولی وقتی دکمه بک رو میزنم و برمیگردم به صفحه قبلی مقدار sharedpreferences قبلی نشون داده میشه و تا وقتی برنامه دوباره اجرا نشه عوض نمیشه مقدارش.
چیکار کنم وقتی دکمه بک میخوره و میاد صفحه قبلی مقدار sharedpreferences رو دوباره بخونم؟ توی inintstate که میذارم بازم نمیشه و فقط بار اول میخونه
ممنون میشم راهنمایی کنید.
تشکر


ثبت پرسش جدید
الیاس سخاوتی نیا
تخصص : علاقه‌مند به برنامه‌‎نویسی
@elyassir 4 سال پیش مطرح شد
علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 4 سال پیش مطرح شد
2

@elyasbeshkani
من فلاتر کار نمی‌کنم، سایر دوستان باید کمک کنند


میلاد-م
تخصص : توسعه‌دهنده رابط کاربری - Fron...
@milad 4 سال پیش آپدیت شد
1

من هم اصلا تخصصی ندارم، جناب فرمانی اگر باشند فکر می کنم می تونند کمک تون کنند.
ایشون رو صدا بزنید.


الیاس سخاوتی نیا
تخصص : علاقه‌مند به برنامه‌‎نویسی
@elyassir 4 سال پیش مطرح شد
1

@ali.farmani
ممنون میشم شما اگه تجربه ای دارین بیان کنین.
تشکر


علی فرمانی
تخصص : فرانت اند
@farmani 4 سال پیش آپدیت شد
2

@elyasbeshkani
سلام . والا فلاترو هنوز من اونقدر وقت نکردم روش فوکوس کنم و نرفتم توش و بیشتر وب کار میکنم ولی تا جایی بتونم کمک میکنم .
شما بیا وقتی دکمه بک رو میزنی اون صفحه مشاهده اطلاعات کاربر که موارد بالا نشون میده بزار وقتی صفحه لود میشه ریفرش بخوره و اطلاعات از اول لود بشه الان شما میری صفحه بعد مثلا صفحه ویرایش اطلاعات وقتی برگشت میزنه به صفحه قبل میاد همون صفحه از قبل لود شده رو دوباره نشون میده . شما باید وقتی صفحه لود میشه اونو ریفرش کنید اطلاعات رو دوباره بخونه و بگیره و قبلی رو نشون نده . میتونید تو صفحه ویرایش مشخصات رو دکمه ذخیره تغییرات رو آن پرسش بزارید وقتی این دکمه خورد و اطلاعات با موفقیت ذخیره شد وقتی داره بر میگرده به صفحه مشخصات یه مقدار ارسال کنه مثلا با نام refresh اینو تو اون صفحه شرط بزارید اگه این مقدار اومد صفحه دوباره لود بشه .
تو جاوا تابع onResume() هروقت اجرا بشه میشه اطلاعات رو ریلود کرد تو فلاترم میشه همچین چیزی ساخت . صفحات زیر رو بخونید فکنم کمکتون کنه .
https://stackoverflow.com/questions/49933272/how-to-refresh-a-page-after-back-bottun-pressed?rq=1
https://stackoverflow.com/questions/49830553/how-to-go-back-and-refresh-the-previous-page-in-flutter
https://stackoverflow.com/questions/44331725/onresume-and-onpause-for-widgets-on-flutter

البته بزارید آقای موسوی هم بیان ایشون بیشتر در این مورد اطلاع دارن .


mahdi khanzadi
تخصص : backend developer at Snapp mar...
@khanzadimahdi 4 سال پیش آپدیت شد
2

سلام برای نگهداری داده ها از ریداکس یا getIt استفاده کنید خیلی بهتر از sharedpreferences هست.

برای بروز رسانی صفحه باید setState رو دوباره اجرا کنید یا یک متغیری رو بهش معرفی کنید بعدش تغییرش بدید.


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام