implement interface in fragment

پرسیده شده
فعالیت 1531 روز پیش
دیده شده 709 بار
1

سلام استاد خسته نباشید و وقتتون بخیر.

دگ کم کم داریم به عید هم نزدیک میشیم و درسته ک تو شرایط سختی هستیم ولی خب بازم عیده پس عیدتون مبارک پیشاپیش همگی:))

استاد من یه دیالوگ فرگمنت داخل فرگمنت ساختم و با استفاده از اینترفیس از "دیالوگ فرگمنت" دیتا رو برگردوندم به فرگمنت ولی مشکلی که پیش میاد و اپ کرش میکنه فک کنم از اینه که فرگمنت Context رو extend نکرده و من وقتی داخل متد onAttach داخل "دیالوگ فرگمنت" اینترفیس رو کست کردم به فرگمنت هیچ کانتکسی دریافت نمیکنه و موقع اجرا وقتی "دیالوگ فرگمنت" رو میخوام باز کنم فورس کلوز میده.

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

 java.lang.ClassCastException: com.example.MyApplication.MainActivity cannot be cast to com.example.MyApplication.ActivityRateDialog$ActivityRateDialogEventListener

 

چطور میشه این مشکل رو برطرف کرد؟

فایل پیوست

Pouya Rezaie
Pouya Rezaie

20 اسفند 98

1
حذف شده

سلام وقت بخیر، اون روش cast کردن context اکتیویتی به interface که گفتم فقط زمانی جواب می ده که بخواهید اطلاعات رو از دیالوگ به اکتیویتی پاس بدید. 

برای مثال شما که فرگمنت هست، باید یک Setter برای اینترفیستون داخل کلاس دیالوگ ایجاد کنید و از اون setter برای implement کردن اینترفیس استفاده کنید

فایل پیوست

سعید شاهینی

توسط

سعید شاهینی

21 اسفند 98