Android для начинающих. Урок 13: RecyclerView (часть 1). Теория.

Автор Alla Bessonova
Android для начинающих. Урок 13: RecyclerView (часть 1). Теория.

на этом уроке мы начнём изучать довольно важную и обширную тему в.

Андроиде который называется leeco коробку с помощью резинок рыбью мы сможем создавать эффективные списке Android приложениях и так как в списке есть практически в каждом Android приложение — это тема довольно важное. Давай сейчас перейдем к нашему предложению получает информацию пользователя. ВКонтакте и попробуем получить информацию о нескольких пользователях и там как раз поймём.

Зачем нам нужно использовать писает кровью для отображения информации о пользователях.

Мы перешли в среду разработки. Теперь давайте немного изменим — это приложение чтобы мы могли получать данные о нескольких пользователей начал перейдём в наш класс Network utils здесь мы изменим нашу название. Надеюсь — это потому, что теперь мы хотим принимать от клиента не один ID пользователя. ВКонтакте, а сразу несколько. Дело в том, что вот и папе. ВКонтакте позволяет нам не только отправляйте запрос на 1 на 1 иди, но позволяет нам разделять эти — это запятой и отправлять запрос об сразу для нескольких пользователей. А теперь нам в ответе от. ВКонтакте когда мы отправим несколько ID разделенных запятой нам придёт. Джейсон в этом массиве который придёт от от. ВКонтакте у нас будет несколько объектов и в каждом объекте будет хранится информация о пользователе вот когда мы получали информацию только лишь об одном пользователе мы здесь 0 0 элемент в этом насилие и с ним работали. Теперь давайте. Вот — это мы уберем и сейчас мне с того, что выбрать первый элемент в этом массиве в давайте мы поэтому массиву пройдемся и будем работать со всеми пользователями которые которые вернулись от. ИП ВКонтакте и минус Jason gray.. То есть это. Леруся по всей длине массива и. Здесь мы получаем. Джейсон объект для каждого поля User info равняется json array Get json object по индексу, а то есть мы получаем каждого каждый объект для каждого пользователя и теперь у этого объекта мы получаем для каждого пользователя его имя и фамилию и теперь давайте будем также дети — это имя и фамилию для каждого пользователя мы будем контактировать в результирующую строку здесь давайте мы перенесем взял тинчурин да сделаем её пустой и здесь когда мы будем получать информацию о следующем пользователя мы будем конкатенировать строки конечно не очень хорошо потому, что здесь лучше использовать stringbuilder например. Но я — это показываю лишь. Как пример неправильного построения списка вот так делать список конечно же неправильно и мы как с помощью писает кровью можно правильно построить список здесь мой например будем получать информацию об пользователя пользователя и когда мы получим, а потом использовать и мы будем после этой информации ставить например знаке новой строки чтобы следующая строчка. У пользователя она была на среду и здесь мы ставим два знака этих новой строки потому, что мы хотим чтобы между вот этими строками с именем и фамилией пользователей строка. Теперь когда вот мы реализовали всё это. А ещё нам нужно. Здесь в конце концов. Наш текст с результатом нужно поместить в эту строку в которой мы получили. Теперь в итоге мы получим такой большой текст который будет в себя хранить информацию о нескольких пользователях и эти пользователя вот эти строчки внутри этого текст пью вот эти вот между собой будут развиваться пробел будут отделяться пустой строкой. Давайте посмотрим на этот псевдо список который у нас получился наше приложение запустилась. Теперь давайте ведём ID через запятую 102 103 104 и теперь давайте начнем на. Сочи мы совершили запросы. ВКонтакте и получили вот такой вот список имен и фамилии людей с детьми. Это вы видите, что у нас так как у нас textview помещен в с кровью мы можем прокручивать этот список — это список он списком является потому, что — это просто большой один большой компонент текст в котором строки разделены между собой пробелами, что же мы сделали. Мы вышли в интернет моя распарсить json от. ВКонтакте и мы его целиком отобрази. Лего одном компоненте textview почему — это плохо во-первых. Вы видите, что дизайн очень примитивным во-вторых мы не можем работать с конкретным элементам списка потому, что единственное, что нас здесь есть — это один большой компонент текста и поэтому мы кстати не можем. Какой — это более-менее хороший дизайн сделать потому, что у нас — это один большой component Text мне. Можем например работать с конкретным элементам списка и мы не можем например обрабатывать нажатии на конкретный элемент списка если бы мы хотели например узнать больше о каком-то пользователей. ВКонтакте то. Логично было бы при нажатии на этого пользователя переводить клиента на страницу этого пользователя, но этого мы пока сделать не можем потому, что у нас здесь в эти вот — это информация о каждом пользователя — это не конкретный элемент списка, а — это просто часть большого элемента компонента textview более того вот такой подход эффективен при большом количестве данных если бы мы получали информацию о 1000 пользователей то уже наверное. При таком количестве вот этих строк при прокрутке нашего списка у нас приложение уже тормозила и в четвёртой недостаток заключается в том, что такой подход не масштабируется. Например если мы захотим отображаются аватары пользователей фотографиях то — это будет тоже сделать непросто главный недостаток заключается в том. И вообще все недостатки исходит из того, что здесь у нас вот эти элементы списка — это не конкретные какие-то компоненты самостоятельные. А — это просто все эти элементы списка находятся в одном компоненте текст с помощью recyclerview мы можем решить.

0 комментариев
0

Читайте также