تابستون داره تموم میشه ها، فرصت‌ها محدودن کلی آفر جذاب در کمپین تابستون🔥👇
۰ ثانیه
۰ دقیقه
۰ ساعت
۲ Freestyle
فراخوانی مجدد API با مقادیر ورودی متفاوت
جامعه جاوا (اندروید) ایجاد شده در ۲۵ فروردین ۱۴۰۰

سلام و وقت بخیر.

فرض کنید یه API داریم که آرایه‌ای برمیگردونه. این آرایه شامل آبجکت‌هاییه که هر آبجکت یا اطلاعات یک شخص هست یا اطلاعات یک گروه. حالا اگر API مجدد با ورودی id گروه فراخونی بشه مجدد آرایه‌ای از آبجکت‌هایی برمیگردونه که این آبجکت یا اطلاعات یک شخصه یا گروهی از اشخاص و این روند میتونه تا بی نهایت فراخونی ادامه پیدا کنه.

من توی یه فرگمنت میخوام این API رو فراخونی کنم، لیست اولیه رو دریافت کنم، یه id جدید به API بدم زیرلیست رو دریافت کنم، دوباره از اون لیست یه id بگیرم بدم به API و الی آخر. در واقع میخوام لیستی که به آداپتر ریسایکلرویو میدم رو هر بار تغییر بدم. چطوری میتونم این کارو بکنم؟ من سعی کردم توی onClick آیتم‌های آداپتر ViewModelFactory رو با ورودی‌های جدید مقدار دهی کنم و viewModel رو هم با ViewModelFactory تغییر پیدا کرده مقدار دهی کنم و دوباره API رو صدا بزنم و لیست جدید رو بریزم توی لیست آداپترم و notify کنم اما جواب نداد، هر بار با اینکه مقدار جدیدی به ورودی ViewModelFactory دادم بازم همون لیست اولیه رو برمیگردونه.

ممنون میشم راهنمایی بفرمایید.

سلام وقت بخیر

 

ممنون میشم api تون قرار بدین(عکس یا لینک مربوطه) و کمی توضیحات دقیق‌تری از مشکلتون بنویسید تا بهتر شما رو راهنمایی کنم.

 

پوریا شفیعی ۲۵ فروردین ۱۴۰۰، ۱۲:۴۲

جواب اینه»

از HashMap استفاده میکنیم و پاسخ API رو با Keyهای مختلف در Map ذخیره میکنیم.

private final MutableLiveData<Map<String, RESPONSE> myMutableLiveData = new MutableLiveData<>();
Freestyle ۱۰ مرداد ۱۴۰۰، ۰۵:۰۰