Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Spelcrawler
525 / 495 / 111
Регистрация: 12.03.2014
Сообщений: 1,647
Завершенные тесты: 1
#1

Кастомный список - Android

17.09.2015, 09:11. Просмотров 725. Ответов 8
Метки нет (Все метки)

Здравствуйте. Пытаюсь сделать список с помощью RecyclerView. Нужно разделить его на несколько частей, примерно 3-4. Каждая часть должна быть в CardView. Все части кроме одной состоят из обычных элементов (у каждой части разные), а последняя должна содержать раскрываемые элементы. Собственно в чем проблема - если делать с разными viewType - не получится группировать списки в CardView (да и не только в него, вообще не понятно каким образом можно выделить несколько элементов в группу, не считая вьюшек разделителей). Если использовать несколько разных RecyclerView и засунуть их в NestedScrollView - список с раскрывающимися элементами начинает совершенно не понятно себя вести (неверные размеры, скролл внутри себя, не двигая верхние и нижние элементы и т.п.). И такое поведение не только из-за раскрывающихся элементов, если динамически добавлять\удалять - тоже самое. Может делал кто-то подобное или хотя бы мысли какие есть?

Добавлено через 17 часов 6 минут
Ну хоть какие нибудь бредовые идеи бы)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Паблито
2063 / 1805 / 562
Регистрация: 12.05.2014
Сообщений: 6,430
Завершенные тесты: 1
17.09.2015, 09:36     Кастомный список #2
я не уверен что все прочитал внимательно, но зачем вставлять нагруженные cardview в RecyclerView, а не просто в NestedScrollView ?
Spelcrawler
525 / 495 / 111
Регистрация: 12.03.2014
Сообщений: 1,647
Завершенные тесты: 1
17.09.2015, 09:44  [ТС]     Кастомный список #3
Паблито[/nick], ну там ведь может быть куча элементов в списке (у каждой карточки свой список), и каждый при отрисовке будет перерисовывать другие - слишком долго все это работает.
CoolMind
418 / 401 / 65
Регистрация: 06.10.2012
Сообщений: 1,723
17.09.2015, 12:55     Кастомный список #4
Spelcrawler, здравствуй!
Рисуночек бы какой-нибудь (хотя, всё равно не помогу), как это выглядит.
У RecyclerView нет addFooter, но люди пытаются допридумывать, поэтому поищите addHeader RecyclerView, может, пригодится.
androbro
323 / 283 / 59
Регистрация: 17.10.2014
Сообщений: 835
17.09.2015, 12:58     Кастомный список #5
"Вот пример кода. Надо свой View поместить в AppBarLayout. Здесь layoutHeader будет скролиттся при скролле RecyclerView.

XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/coordinatorLayout"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
 
    <android.support.v7.widget.RecyclerView
        android:id="@+id/recyclerView"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:layout_behavior="@string/appbar_scrolling_view_behavior">
 
    </android.support.v7.widget.RecyclerView>
 
    <android.support.design.widget.AppBarLayout
        android:id="@+id/appBarLayout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
 
        <LinearLayout
            android:id="@+id/layoutHeader"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:background="@color/mkbPrimaryColor"
            android:orientation="vertical"
            android:visibility="visible"
            app:layout_scrollFlags="scroll|enterAlways">
 
    </android.support.design.widget.AppBarLayout>
 
</android.support.design.widget.CoordinatorLayout>
Обратите внимание на дополнительные атрибуты app:layout_behavior="@string/appbar_scrolling_view_behavior" и app:layout_scrollFlags="scroll|enterAlways"

AppBarLayout рекомендуется располагать ниже остальных элементов. При этом он все равно будет вверху страницы."

PS:привет с SO
Spelcrawler
525 / 495 / 111
Регистрация: 12.03.2014
Сообщений: 1,647
Завершенные тесты: 1
17.09.2015, 13:00  [ТС]     Кастомный список #6
CoolMind, не умею рисовать) В общем может не совсем правильно выразился. Есть список из 10 групп, в каждой группе по 100 элементов. Нужно выделить каждую группу в CardView, насколько я понимаю RecyclerView не позволяет такого. И мне бы какую нибудь идею как это можно реализовать обходными путями)

Добавлено через 2 минуты
Цитата Сообщение от androbro Посмотреть сообщение
PS:привет с SO
Это мой же вопрос) Не вышло тем способом реализовать т.к. скроллит верхнуюю вьюшку только список, а вьюшка может не поместиться полностью в экран и соответственно проскроллить уже не выйдет.
Паблито
2063 / 1805 / 562
Регистрация: 12.05.2014
Сообщений: 6,430
Завершенные тесты: 1
17.09.2015, 13:03     Кастомный список #7
я бы делал список групп, а при нажатии на item - проваливался бы в список элементов этой группы
все это делается двумя RecyclerView (для групп и дочерних элементов)

на onBackpressed (ну или при клике на какую-то иконку) - возврат на экран со списком групп
Spelcrawler
525 / 495 / 111
Регистрация: 12.03.2014
Сообщений: 1,647
Завершенные тесты: 1
17.09.2015, 13:07  [ТС]     Кастомный список #8
Паблито, не подходит вот такой вариант нужно именно на одном экране. А кстати насколько странно будет выглядеть если я в элементы RecyclerView засуну в каждый еще по одному RecyclerView?)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.09.2015, 13:10     Кастомный список
Еще ссылки по теме:

Android Кастомный ArrayAdapter для Spinner
Кастомный рекламный блок для приложения Android
Установить кастомный thumb на seekBar по цетру Android
Кастомный EditText Android
Android Краш - кастомный cursoradapter

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
androbro
17.09.2015, 13:10     Кастомный список
  #9

Не по теме:

Цитата Сообщение от Spelcrawler Посмотреть сообщение
Это мой же вопрос)
да я понял по нику

Yandex
Объявления
17.09.2015, 13:10     Кастомный список
Ответ Создать тему
Опции темы

Текущее время: 11:55. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru