کلیدستان

نسخه‌ی کامل: سوال دارم؟ (دسترسی به متغیر در همه Activity ها) (برنامه نویسی اندروید)
شما در حال مشاهده نسخه آرشیو هستید. برای مشاهده نسخه کامل کلیک کنید.
سلام. چه طور یه متغیری رو میشه تو همه اکتیویتی های یک پکیج مورد استفاده قرار داد؟
سلام 
اینطوری تعریف کن(مثلا تو MainActivity.java تعریفش کردیم) :

کد پی‌اچ‌پی:
   public static int food

اینطوری استفاده کن :

کد پی‌اچ‌پی:
MainActivity.food =2
(۱۳۹۴/۱۱/۰۷, ۰۶:۲۱ ب.ظ)leila نوشته: [ -> ]سلام. چه طور یه متغیری رو میشه تو همه اکتیویتی های یک پکیج مورد استفاده قرار داد؟

سلام
میتونی برای شکیل تر شدن کد نویسیت همه ی متغیر های مهم رو در یک کلاس با نام اختیاری
به صورت زیر تعریف کنی:
public static final
بعد نوع و نام متغیر رو در ادامش مینویسی و مقدار دهی میکنی و در همه ی اکتیویتی ها برای استفادش باید اول نام کلاسی که این متغیر ها رو توش ذخیره کردی بنویسی و بعد یک دات بزاری و نام متغیر رو بنویسی.
سلام
این هم یک راه سومی که میتونید استفاده کنید
بیاید به کلاس جداگانه بصورت Singleton بسازی و اون از Application . Extend کنید
تمامی متغیرهای مورد نیاز رو به صورت Static تعریف کنید

بعدش میونید در تمامی Activity ها از این کلاس استفاده کنید
این کلاس نیازی به نمونه سازی نداره و در کل چرخه حیات برنامه پایدار میمونه و میتونید ازش استفاده کنید
ولی اکیدا توصیه میشه که تا جایی که امکان دارد خیلی کم از متغیر های استاتیک استفاده کنید
اگر تعداد این متغییر های استاتیک زیاد باشه، سرعت و لود شدن برنامه رو بصورت قابل توجهی میاره پایین
بله دقیقا حق با شماست

یک نکته که در بالا فراموش کردم بگم این هستش که در صورت استفاده از Pattern یا الگوی Singleton میتونید از استفاده از متغیرهای Static صرفه نظر کنید.