انجمن سایت کلیدستان


رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
رفرش کردن گریدویو بعد از انجام اپدیت

رفرش کردن گریدویو بعد از انجام اپدیت

#4
بزارید یه نکته ای رو بگم :شاید بعدا به کمکتون اومد:
دوست عزیز پروگرس بار شما قابلیت کنسل شدن داره.یعنی وقتی کاربر دکمه بک گوشی بزنه progressBar از بین میره..بزارید یه مثال بزنم :فرض کنید من کاربر دکمه آپدیت برنامه رو زدم.پنجره progress برای من نمایش داده میشه..ممکن سرعت اینترنت پایین باشه اون لحظه و فرایند دانلود طول بکشه..بخاطر همین پشیمون میشم و دکمه بک گوشی میزنم...یا از برنامه خارج میشم یا وارد اکتیویتی های دیگه میشم..ولی فرایند دانلود داره ادامه پیدا میکنه تا تموم بشه..بعد از اینکه تموم شد.به دستورات نظیر زیر میرسید

کد:
Toast.makeText(getBaseContext(), "آپدیت شد حالشو ببر پسر", Toast.LENGTH_SHORT).show();

چون کاربر از برنامه خارج شده،این خط ارور میده و برنامه بسته میشه..چون دستور getBaseContext() نمیتونه کانتکس مورد نظر رو پیدا کنه.(متاسفانه خیلی از نرم افزارها اصلا به این نکته توجه ندارند که این موارد رو کنترل کنند).یا دستوراتی مانند ذخیره کردند در دیتابیس بعد از اتمام دانلود..
این واسه آگاهی داشتن از این دست موارد..

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

کد پی‌اچ‌پی:
public void refresh()
{
Intent refresh=new Intent(khanevadeh.this,khanevadeh.class);
StartActivity(refresh);


این تابع میاد یکبار دیگه خود اکتیوتی دوباره صدا میزنه..اینکار باعث میشه متد OnCreate دوباره از نوع آغاز به کار بشه ..و دیگه احتیاجی نباشه از اکتیویتی خارج و دوباره وارد بشید..
پاسخ
 سپاس شده توسط admin


پیام‌های این موضوع
RE: رفرش کردن گریدویو بعد از انجام اپدیت - توسط داش بهروز - ۱۳۹۴/۰۱/۱۷, ۰۱:۵۷ ق.ظ

پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان