در حالت کلی RecyclerView پرفرمنس بهتری داره (بر اساس ادعای گوگل و نه تست شخصی)، اما معنیش این نیست که ListView ضعف زیادی در نمایش داره.
RecyclerView نسل بعدی ListView هست. تغییراتی که صورت گرفته به دو بخش عمده تقسیم میشه:
- استانداردسازی الگوی Adapter: در اینجا یک الگو برای ادپتر ایجاد شده که بصورت پیشفرض الگوی ViewHolder رو در خودش داره. سابقاً در ادپتر لیست ویو هم این الگو رو پیاده سازی می کردیم، اما چون استانداردی وجود نداشت، هر توسعه دهنده به شیوه ی خودش انجامش میداد و اگر توسعه دهنده ای از این الگو اطلاعی نداشت، به دلیل اینکه این مسئله رو رعایت نکرده بود، با افت پرفرمنس مواجه میشد. پس در RecyclerView با یک API واحد و استاندارد مواجه میشیم که به خودی خود بعنوان بهبود در پرفرمنس درنظر گرفته میشه.
- پشتیبانی از LayoutManager: لیست ویو عناصر درونش رو بصورت خطی عمودی نمایش میده. RecyclerView میتونه از الگوهای چینشی متفاوتی پشتیبانی کنه، درواقع RecyclerView به تنهایی میتونه جایگزین ListView و GridView بشه. پس کنترل خیلی بیشتری در نحوه ی نمایش عناصر رو دارید.
اگر سوالتون این هست که "آیا لیست ویو در نمایش تعداد زیادی آیتم خیلی ضعیف هست و آیا راه حل استفاده از RecyclerView هست"، پاسخ منفی هست. با همین لیست ویو هم میتونید پرفرمنس خوبی داشته باشید به شرطی که Adapter رو درست بنویسید.
برچسب:
نویسنده: محمد رضا جوادیان
تاريخ: شنبه
22 خرداد
1395 ساعت: 17:10