تابستون داره تموم میشه ها، فرصت‌ها محدودن کلی آفر جذاب در کمپین تابستون🔥👇
۰ ثانیه
۰ دقیقه
۰ ساعت
۱ amirreza lotfi
سوال درباره مفهوم Context
پوریا شفیعی حل شده توسط پوریا شفیعی

سلام وقت بخیر

کمی در مفهوم Context دچار مشکل شدم .  
1 - کلاس context ، کلاس ریشه اپ اندرویدی ئه (البته اگه اشتباه نکنم) و اکثر آبجکت‌ها بهش دسترسی دارن
وقتی بیشتر آبجکت‌های اپ بهش دسترسی دارن ، چرا عملیات هایی مثل Intent یا مثلا Toast‌ها تو پارامتر‌های ورودیشون باید context رو پاس بدیم ؟ خود توسعه دهنده‌های اندروید استودیو این مورد رو نمیتونستن هندل بکنن ؟

2 - اگر در یک اپلیکیشن ، دوتا اکتیویتی داشته باشیم ،آیا هرکدوم از اونا Context منحصر به فرد خودشونو دارن یا Context هاشون یکسانه ؟ 

سلام وقت بخیر

 

 Context یه کلاس abstract هستش که  وضعیت برنامه رو شرح میده و توسط اون می‌تونید برنامه رو کنترل کنید.، با استفاده از context به ریسورس‌های اپتون دسترسی دارین.. همچنین برای ساخت و پیاده سازی ویو‌ها در اپ استفاده میشه مثل لانچ کردن اکتیویتی و..

شما میتونین داخل کلاسایی که Context رو extends کردن بهش دسترسی داشته باشین مثل (Application , Activity, Service, Intent Service و..)

 

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

درمورد سوال دوم خب شما هر عملیاتی که انجام میدید و با هر آبجکتی که کار می‌کنید بعضی از خواص خودش رو از کلاس Context ارث بری کرده. مثلا وقتی کلاس شما ارث بری میکنه از activity خود کلاس اکتیوتی هم ارث بری کرده از CotextTheme  و این کلاس هم از Context ارث بری میکنه.

بهترین پاسخ
پوریا شفیعی ۲۸ خرداد ۱۴۰۰، ۱۸:۵۳