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

نحوه نمایش دیالوگ در adapter لیست ویو

محمد  10 سال پیش  10 سال پیش
+1 0

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

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

 Dialog dialog = new Dialog(this);

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

 Dialog dialog = new Dialog(getActivity());

سوال: برای نمایش دیالوگ در adapter لیست ویو (که داخل فرگمنت هستش) باید چکار کنیم؟

فرض کنید یه فرگمنت داریم که داخلش یه لیست ویو هست. توی adapter لیست ویو یه دکمه داریم که میخوایم با کلیک بر روی آن یه دیالوگ نشون بدیم. به جای ??????????? کد زیر باید چی بذاریم؟

  Dialog dialog = new Dialog(???????????????);
+1 0
فکز میکنم G.currentActivity (10 سال پیش)
0 0
ممنون دوست عزیز. ولی این کد وقتی جواب میده که لیست ویو رو داخل اکتیویتی ساخته باشیم. من لیست ویو رو داخل فرگمنت ساختم. (10 سال پیش)
+1 0
لینک (10 سال پیش)
0 0
بازم ممنون. ولی نتونستم جواب سوالمو از لینکی که دادید پیدا کنم. (10 سال پیش)
 برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال 
amiryaser  10 سال پیش
+1 0

 داخل فرگمنتت کد های زیر رو قبل از OnCreatView  اضافه کن

 static Activity mActivity;

@Override
public void onAttach(Activity activity) {
super.onAttach(activity);
mActivity =activity;
}

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

 MyFragment.showDialog(item);

آیتم هم از نوع  struct هست که توی متد fill  برای هر Item  ساخته میشه و اونو میتونی پاس بدی به دیالوگت که توی دیالوگت به اون آیتم دسترسی داشته باشی.

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

 Dialog Mydialog = new Dialog(mActivity);

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