آموزش ریسایکلرویوی در اندروید با جاوا (قسمت دوم)

آموزش ویدیویی اندروید

کد نویسی عملی Custom Adapter در RecyclerView با جاوا

در ادامه مباحث پایه‌ای بخش اول آموزش RecyclerView در اندروید، در این جلسه وارد بخش هیجان‌انگیز برنامه نویسی و پیاده سازی یک آداپتر اختصاصی (Custom Adapter) با زبان جاوا می‌شویم. آداپتر به عنوان پل ارتباطی میان پایگاه داده شما و عناصر رابط کاربری، داده های خام را گرفته و به نمای بصری تبدیل می‌نماید.

در پروژه هایی واقعی، داده ها ممکن است از یک پایگاه داده محلی نظیر دیتابیس SQLite یا از یک وب سرویس RESTful بارگذاری شوند. طراحی تمیز و اصولی متدهای آداپتر به شما اجازه می‌دهد این اطلاعات را بدون کندی و با کمترین میزان مصرف حافظه پردازش و به مخاطب نمایش دهید.

نکته معماری: در پروژه هایی مبتنی بر معماری MVVM در اندروید، آداپترها هرگز نباید داده ها را مستقیماً ویرایش یا درخواست شبکه ارسال کنند؛ بلکه صرفاً از طریق رویدادها (Events)، تعاملات کاربر را به لایه ViewModel گزارش می‌دهند.

پیاده سازی سه متد بنیادین آداپتر

هنگام گسترش کلاس از RecyclerView.Adapter<MyViewHolder>، ملزم به پیاده سازی سه متد اصلی با عملکردهای مشخص هستید:

  • متد onCreateViewHolder: فایل لایه بندی XML سطر را با استفاده از LayoutInflater اینفلیت کرده و یک شیء از کلاس ViewHolder سفارشی ما را بازمی‌گرداند.
  • متد onBindViewHolder: مسئولیت اتصال فیلدهای داده در موقعیت (Position) جاری به نماهای تعریف‌شده در ViewHolder را دارد. در این متد متونی مثل نام و تصاویر درون آیتم ها قرار می‌گیرند.
  • متد getItemCount: تعداد کل عناصر موجود در لیست منبع را گزارش می‌دهد تا رسیارکلر ویو بداند چه تعداد آیتم برای رندر کردن وجود دارد.

مدیریت حرفه ای رویداد کلیک با Interface

بر خلاف ListView قدیمی که متدی آماده به نام setOnItemClickListener داشت، در RecyclerView شما آزادی عمل کامل برای پیاده سازی رویداد کلیک بر روی کل سطر یا دکمه های خاص داخل آن دارید. بهترین شیوه مطابق با اصول طراحی تمیز، تعریف یک اینترفیس سفارشی مانند OnItemClickListener است:

این رویکرد به اکتیویتی یا فرگمنت اجازه می‌دهد منطق نویگیشن و رفتن به صفحه جزییات را خود در دست بگیرد بدون اینکه کلاس آداپتر وابسته به کدهای اکتیویتی گردد. همچنین برای لیست های متغیر پرشمار، پیشنهاد می‌شود در آینده از ابزار DiffUtil برای رفرش هوشمندانه فقط سطرهای تغییریافته بهره بگیرید.

فیلم آموزشی عملی: در ویدیوی بالای این بخش، صفر تا صد ایجاد مدل داده، نگارش آداپتر و تست خروجی در ایمولاتور اندروید با زبان جاوا گام‌به‌گام پیاده سازی شده است.

امتیاز و نظرات

۰.۰ (۰ نظر)
برای ثبت دیدگاه باید وارد حساب کاربری شوید. ورود

هنوز نظری ثبت نشده است. اولین نفر باشید.