آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

G.currentActivity

Hello World  11 سال پیش  11 سال پیش
+1 0

سلام دوستان من G.currentActivity  رو متوجه نمیشم

وقتی استاد متد on resume  رو توی activityEnhanced  قرار دادن 

و توی enhanced  نوشتن که   G.currntActivity = this 

حالا از کجا میفهمه کدوم اکتویتی در حال اجراست_ لطفا کلا این رو توضیح بدین 

 برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال 
آس  11 سال پیش
+6 0

سلام

کلاس G که تعریف می کنیم چون Extends از Application شده همیشه قابل دسترسی و run شدن .
خب این که از این
حالا
توی هر Activity که باشید مثلا  
Activity 1 حتما متد onResume روش در حال اجراست تا زمانی که از اکتیویتی 1 برین به یه دیگه مثلا اکتیویتی 2 ( که در این صورت متد onPause برای اکتیویتی اجرا میشه ) یا اکتیویتی 1 رو با دستور Activity.finish ببیندید ( که در این صورت متد onStop برای اکتیویتی 1 اجرا میشه ) ، خب اینم از این .

پس تا اینجا متوجه شدیم اگر توی یک اکتیویتی باشیم حتما حتما تو آن ریزومش هستیم ، پس برای اینکه به برناممون و بقیه قسمت ها خبر بدیم که کجا هستیم باید به یک جایی خبر بدیم که از همه جا در دسترس باشه پس :
میایم توی G همون currentActivity رو میسازیم ومقداری هم نمیدیم ، بعد برای اینکه از اکتیویتی 1 دستمون به 
currentActivity برسه باید آدرسشو بدیم و از اونجایی که توی کلاس G هستش میگیم G.currentActivity ، تا اینجا دستمون بهش رسید حالا چی کار کنیم ؟
الان بهش میگیم G.
currentActivity = this ، که متوجه بشه ما در onResume اکتیویتی 1 هستیم .

« موفق باشید »

0 0
ممنون تقریبا گرفتم قضیه رو ، ولی میشه بگید چرا این کار رو میکنیم ؟ استاد در دستور intent از G.Context استفاده کردن که اشاره به اکتیویتیه جاریه / ولی ما که به عموان برنامه نویس خودمون میدونیم الان کاربر تو کدوم Activity هست ، میتونیم به جای G.context اسم Activity رو بنویسیم چه نیازیه واسش جداگانه کلاس تشکیل بدیم و برنامه مون رو طولانی کنیم (11 سال پیش)
0 0
خب بعضی مواقع هست که میدونیم کجا هستیم و کجا قراره بریم : مثلا میخوایم با یک دکمه از مین اکتیویتی به سکند اکتیویتی بریم ، خب در این صورت مینویسیم اینتنت اینتنت و ... ، درسته در این مورد میدونیم ! اما در مواردی هست که نمیدونیم کجاییم و در واقع یک دکمه نیست و باید بفهمیم کهجا هستیم مثلا : میگیم اگر currentActivity = mainActivity بود اون موقع مثلا یک کاری رو بکن . (11 سال پیش)

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