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

کمک در مورد Fragment

HoCoder  10 سال پیش  10 سال پیش
0 0

سلام

من توی اپم از یک Fragment استفاده کردم و 8 تب هم دارم و برای هر تب یک نمونه از این Fragment رو براش ساختم و از ViewPager استفاده کردم برای نمایش اطلاعات

و من میخوام که اطلاعات هر تب رو وقتی که روی اون تب اسکرول شد رو از اینترنت بگیرم بسته به Position ویوپیجری که داخلش هست و نمیخوام که برای هر تب یک Fragment ایجاد کنم و میخوام یک Fragment داشته باشم و نمونه ها رو از همون بسازم و اطلاعات رو نشون بدم

نمایش اطلاعات هم همه با یک نوع از RecyclerView انجام میدم و مشکلی سر این غضیه نیست.

آیا این راه امکان پذیر هست که من فقط با داشتن یک Fragment بتونم اطلاعات مختلف بسته به Position ویوپیجر از اینترنت بگیرم و نمایش بدم؟

اگه هست لطفا راهنمایی کنید

ممنون

0 0
دوستان کسی راه حل خوبی داره شدیدا منتظر کمکتون هستم (10 سال پیش)
 برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال 
SaeiD-as  10 سال پیش
+2 0

سلام

کاری که من انجام دادم:

متد زیر رو داخل فرکمنتم نوشتم:

 public static Fragment instance(String catId) {
        Fragment fragment = new Fragment();
        Bundle data = new Bundle();
        data.putString("catId", catId);
        fragment.setArguments(data);
        return fragment;
    }

داخل layout فرگمنتم برای هر بخش یک لایه درست کردم و داخل لایه هام ویو مد نظرم رو ایجاد کردم و دست آخر قابلیت نمایش اونها رو GONE قرار دادم

در متد onCreate دیتا وارد شده رو خوندم و با توجه به مقدار اون ویو مد نظرم رو VISIBLE قرار دادم

 catName = getArguments().getString("catId");
switch(catName){
case name1:
layout1.setVisibility(View.VISIBLE);
break;
case name2:
layout1.setVisibility(View.VISIBLE);
break;
.
.
.
}

با این روش مشکلم حل شد و نیازی به تعریف فرگمنت های مجزا نیست؛ البته ممکنه راه حل های بهتری هم باشه که من بی اطلاعم

موفق باشید

0 0
ممنون بابت راهنمایی که کردین ایده ی خوبیه و منتظر میمونم که بقیه دوستان هم ایده هاشون رو بگن تا به یه راه کار خوب و کارساز برسیم، دوستان عزیز منتظرم (10 سال پیش)

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