من پروژه رو دانلود کردم ولی بخاطر کانکشنم و تفاوت در ورژن gradle مون بیلد نشد حتما بررسی میکنم و نتیجه براتون مینویسم .
پوریا شفیعی۲۹ اسفند ۱۳۹۹، ۲۲:۰۰
سلام آقا معین وقت بخیر
تا اونجایی که من متوجه شدم شما توی فرگمنت اصلی بعد از کلیک روی محصول میخوای دوباره بیای به فرگمنت اصلی در حالی که بعد از کلیک روی محصول باید بری به صفحه detail محصول. خب طبیعتاً باید فایل viewModel صفحه detail رو بسازی و از طریق koin اون رو به همراه اینترفیس پاس بدی به صفحه detail. بنابراین باید داخل koin این خط رو اضافه کنی:
و شما ویومدلی نداری که اطلاعات رو برای صفحه بفرسته و نمایش بده داره خطا میده. به نظر من شما مراحل رو درست رفتی فقط باید ادامه بدی و صفحه جزئیات محصول رو هم نمایش بدی اونوقت احتمالاً مشکلت حل میشه.
ببخشید اگه بین اساتید من سعی میکنم کمک کنم چوم خودم این قسمت رو انجام دادم و نتیجه گرفتم دارم میگم.
Mostafa Jahani۰۱ فروردین ۱۴۰۰، ۰۶:۳۸
سلام معین عزیز وقت بخیر
سال نو مبارک
کماکان پروژه به علت متفاوت بودن ورژن gradle بیلد نشد.
بطور کل اشتباهاتی که در پروژه شما دیدم :
۱:نیازی به اینجکت کردن این موارد نبود
val productListAdapterPopular: ProductListAdapter by inject()
val productListAdapterLatest: ProductListAdapter by inject()
همین مشکل باعث میشد پروژه تغییر کند و روش پیاده سازی متفاوتی به خود بگیرد.
پیشنهاد من بهتون این هست جلسات مربوط به این قسمت رو مجدد ببینید و طبق جلسات پیاده سازی رو جلو ببرید
نکته ای که هست اگر لازم باشه مشکلات پروژه رو برطرف کنم احتمالا در آخر به سورس کدی که استاد در پیوست جلسه قرار دادند میرسیم.
پیشنهاد دومی هم که دارم ادامه سورس کد موجود در بخش پیوست جلو نرید اینطوری زیاد متوجه نوع پیاده سازی سازی پروژه نمیشید و براتون مشکل زا خواهد شد.
پس بطور کل مشکلات شما صفحه : HomeFragment
پوریا شفیعی۰۱ فروردین ۱۴۰۰، ۰۸:۳۳
سلام سال نو شما هم مبارک ممنون برای وقتی که گذاشتی پوریای عزیز در مورد دوبار گرفتن نمونه از ProductListAdapter برای دو ردیف شدن لیست محصولات بود که حتی اگه حذفش کنی و یک ردیفش کنی یا براش یه اداپتر جدا بسازی با اینترفیس جداگانه و... همچنان مشکل پا برجاست. اگر پروژه بیلد بشه و اجراش کنید متوجه مشکل میشید تا اینجای کار پروژه هیچ چیز پیچیده ای نداشته که بگم متوجه نشدم یا اشتباه پیش رفتم این مشکل یکم عجیبه تو پروژه اماده زمانی اداپتر نمونش ساخته میشه این قسمت اجرا میشه ولی تو اونی که خودم پیش بردم این اتفاق نمیوفته.
var onProductClickListener: OnProductClickListener? = null
ای دی تلگرام و شماره اگه لطف کنی یه پی ام بدی خیلی راحتتر میتونم نشون بدم مشکلو و کاملا توضیح بدم.
@moeinx_x
۰۹۳۵۷۱۱۴۱۰۳ الان پروژه اماده هستش میشه سوییچ کرد روش از مشکل گذشت ولی در اینده اینطور نیست.
معین سعادتمند۰۱ فروردین ۱۴۰۰، ۰۹:۳۱
آقا معین عزیز
شما توی فرگمنت اصلی داخل onViewCreated این خط رو اضافه نکردی:
productListAdapterLatest.onProductClickListener = this
که باعث میشه اینترفیس کار نکنه. من روی پروژه شما اضافه کردم و جواب داد.