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

سلام خسته نباشید 

ببخشید استاد شما هنگام instans گرفتن از کلاس appcompatactivity چرا به جای new از getActivity استفاده کردین و فرقش با new کردن در چی هستش و من خودم که new کردم بهم ارور داد و مجبور شدم که مثل شما instans بگیرم.

ممنون می‌شم راهنماییم بکنید

سلام وقت بخیر

من این سوال رو خیلی خودمونی جواب میدم تا به خوبی مفاهیم رو یاد بگیرید.

 دقت کنید MainActivity یا هر Activity که ساختید آمده و AppCompatActivity() رو extends کرده

به عبارتی اکتیویتی ما  اتربیوت و Behavior‌های کلاس پدر را داراست پس نتیجه میگیریم MainActivity یا هر اکتویتی دیگری که بسازیم خود یک AppCompatActivity هست به همین دلیل به راحتی آمدیم و با مقدار دهی getActivity()  گفتیم اون اکتیویتی که الان داخلشیم رو بده .

پس پدره Activityیی که ساختیم AppCompatActivity هست که وقتی بخواهیم instancs بگیریم کافیست در فرگمنت بگوییم getActivity() .

یاداوری: میدونیم که فرگمنت در اکتیویتی زندگی میکنه پس با متد getActivity() اومدیم و اکتیویتی مربوطه رو گرفتیم

امیدوارم به خوبی توضیح داده باشم

همچنین پیشنهاد میکنم ی مقاله درمورد پولیمورفیسم مطالعه کنید

پیروز باشید.

همچنین جواب در استک اور فلو : لینک

بهترین پاسخ
پوریا شفیعی ۲۲ شهریور ۱۳۹۹، ۱۷:۲۵