Android. Программирование для профессионалов. 4-е издание



Download 21,53 Mb.
Pdf ko'rish
bet153/485
Sana13.07.2022
Hajmi21,53 Mb.
#787165
1   ...   149   150   151   152   153   154   155   156   ...   485
Bog'liq
Android Programmirovanie dlya professionalov 4-e izdanie 2020 Fillips Styuart Marsikano Gardner

 
 
 
 

RecyclerView.ViewHolder(view),
View.OnClickListener {
private lateinit var crime: Crime
private val titleTextView: TextView =
itemView.findViewById(R.id.crime_title)
private val dateTextView: TextView =
itemView.findViewById(R.id.crime_date)
init {


itemView.setOnClickListener(this)
}
fun bind(crime: Crime) {
this.crime = crime
titleTextView.text = this.crime.title
dateTextView.text 
=
this.crime.date.toString()
}
override fun onClick(v: View) {
Toast.makeText(context, "${crime.title}
pressed!", Toast.LENGTH_SHORT)
.show()
}
}
В листинге 9.15 
CrimeHolder
сам по себе реализует
интерфейс 
OnClickListener
. В окне 
itemView
, которое
представляет собой 
View
для всей строки, 
CrimeHolder
устанавливается в качестве приемника событий нажатия.
Запустите CriminalIntent и нажмите на пункт в списке. Вы
должны увидеть сообщение о нажатии.
Для любознательных: ListView и GridView
Ядро Android OS включает классы 
ListView

GridView
и
Adapter
. До выхода Android 5.0 это были предпочтительные
способы создания списков или сеток элементов.
API для этих компонентов очень похожи на 
RecyclerView
.
Класс 
ListView
или 
GridView
отвечает за прокрутку набора


элементов, но не располагает информацией об этих элементах.
Адаптер отвечает за создание каждого из изображений в
списке. Однако 
ListView
и 
GridView
не заставляют вас
использовать шаблон 
ViewHolder
(хотя вы можете и должны
делать это).
Эти 
старые 
реализации 
заменены 
реализацией
RecyclerView
из-за сложности изменения поведения
ListView
или 
GridView
.
Создание горизонтальной прокрутки 
ListView
, например,
не входит в 
ListView
API и требует много работы. Создание
пользовательского макета и прокрутки с помощью
RecyclerView
— тоже непростая задача, но 
RecyclerView
лучше для нее предназначен.
Еще одна ключевая особенность 
RecyclerView
— анимация
элементов в списке. Анимированное добавление или удаление
элементов — это сложная задача, в которой легко допустить
ошибку. 
RecyclerView
делает процесс намного проще, имеет
несколько встроенных анимаций и позволяет легко
настраивать их.
Например, если вы обнаружили, что преступление в
положении 0 перемещается в положение 5, можно было бы
анимировать это вот так:
recyclerView.adapter.notifyItemMoved(0, 5)

Download 21,53 Mb.

Do'stlaringiz bilan baham:
1   ...   149   150   151   152   153   154   155   156   ...   485




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish