8 Відмінності між RecyclerView та ListView
1. ViewHolder Pattern
Шаблон, що використовується для зменшення викликів до методів findViewById () .
У ListView ви можете легко створити список, не використовуючи ViewHolder. Але не у випадку RecyclerView.
2. Перехідник
Обидва вони є AdapterViews, так. Він працює на основі класу адаптерів.
Створити ListView легко за допомогою адаптерів за замовчуванням, таких як ArrayAdapter, CursorAdapter, але RecyclerView забезпечує клас RecyclerView.Adapter, щоб створити новий спеціальний клас адаптерів.
Ви не можете використовувати ArrayAdapter або будь-який інший вбудований адаптер з RecyclerView.
3. Розташування предметів
Я створив Vertical ListView у простому та меншому коді. Але що робити, якщо нам потрібно створити GridView?
RecyclerView використовує LayoutManager для організації своїх елементів. Є 3 класи LayoutManager.
- LinearLayoutManager - допомагає створити лінійний список типів.
- GridLayoutManager - використовується для створення Grid.
- StaggeredGridLayoutManager - використовується для створення staggeredgrid.
Анімації
У ListView бракує основних анімацій. Але RecyclerView поставляється з простими анімаціями.
Дільник
Андроїд: дільник і Android: dividerHeight атрибути або setDivider (), setDividerHeight () дозволяє зробити користувальницький дільник в ListView.
з 25.1.0 ви можете використовувати клас DividerItemDecoration, щоб зробити простий дільник.
Клацніть Події
RecyclerView бракує OnItemClickListener , так, це дуже сумно. Але вони надають більше контролю розробнику, надаючи RecyclerView.OnItemTouchListener.
Повідомте методи
Вам потрібно зателефонувати у відповідні методи сповіщення *, щоб виконати правильну анімацію. RecylcerView має безліч методів сповіщення * у порівнянні з ListView.