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

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

Войти
Регистрация
Восстановить пароль
 
Shamsik
-42 / 17 / 5
Регистрация: 23.12.2013
Сообщений: 521
Записей в блоге: 1
Завершенные тесты: 2
#1

RecyclerView click - Программирование Android

10.04.2016, 02:01. Просмотров 640. Ответов 2
Метки нет (Все метки)

Добрый ночи. ребята как при клики зафиксировать блок.

Java
1
2
3
4
5
6
7
8
9
recView.addOnItemTouchListener(
                new RecyclerItemClickListener(getActivity(), new RecyclerItemClickListener.OnItemClickListener() {
                    @Override
                    public void onItemClick(View view, int position)
                    {
                        Toast.makeText(getActivity(),"sss",Toast.LENGTH_LONG).show();
                    }
                })
        );
Кликните здесь для просмотра всего текста

Java
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
34
35
36
37
public class RecyclerItemClickListener implements RecyclerView.OnItemTouchListener {
    private OnItemClickListener mListener;
 
    public interface OnItemClickListener {
        public void onItemClick(View view, int position);
    }
 
    GestureDetector mGestureDetector;
 
    public RecyclerItemClickListener(Context context, OnItemClickListener listener) {
        mListener = listener;
        mGestureDetector = new GestureDetector(context, new GestureDetector.SimpleOnGestureListener() {
            @Override
            public boolean onSingleTapUp(MotionEvent e) {
                return true;
            }
        });
    }
 
    @Override
    public boolean onInterceptTouchEvent(RecyclerView view, MotionEvent e) {
        View childView = view.findChildViewUnder(e.getX(), e.getY());
        if (childView != null && mListener != null && mGestureDetector.onTouchEvent(e)) {
            mListener.onItemClick(childView, view.getChildAdapterPosition(childView));
        }
        return false;
    }
 
    @Override
    public void onTouchEvent(RecyclerView view, MotionEvent motionEvent) {
    }
 
    @Override
    public void onRequestDisallowInterceptTouchEvent(boolean disallowIntercept) {
 
    }
}


Он как бы работает но при нажатии не фиксируется(не выделяется) блок как это делается в ListView.


Как сделать так, подскажите пожалуйста
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.04.2016, 02:01     RecyclerView click
Посмотрите здесь:

Recyclerview click fixed - Программирование Android
Добрый день. у меня в Recyclerview выводится список контактов, как сделать чтобы к при клике на него она фиксировалась грубо...

RecyclerView создание Item Click Listener - Программирование Android
Здравствуйте. Недавно начал изучать Android. Дошел до изучения RecyclerView. Научился создавать RecyclerView и отображать там данные из БД....

NullPointerException в адаптере RecyclerView - Программирование Android
Здравствуйте уважаемые форумчане! Столкнулся с такой проблемой, в RecyclerView создаю адаптер для добавления карточек, в карточке, в...

RecyclerView сохранения в JSON - Программирование Android
У меня есть recyclerview (в фрагменте) и фрагмент с детальной информацией к одному из элементов. Все бы хорошо, но когда мои данные...

RecyclerView фиксированый height - Программирование Android
Мне кажется много кто встречался с данной проблемой. у меня есть корзина, в ней RecyclerView с фиксированой высотой. (что бы там 3...

Пример fragments and RecyclerView - Программирование Android
может кто-то показать пример проекта как на фото, с 2 активити, и 2 фрагментами, слева список RecyclerView а справа какая-то инфа, при...

Заполнить RecyclerView из Cursor - Программирование Android
Ребят подскажите плз, есть ли способы закинуть данные с бд типа Cursor в список ResyclerView? Или нужно обязательно переводить данные в...

Обновление содержимого Recyclerview - Программирование Android
Всем привет. Изучаю Android. Разрабатываю первое приложение. Создал список с помощью Recyclerview. Возникла проблема. После записи данных в...

Загрузка изображений в RecyclerView - Программирование Android
Здравствуйте, каким образом можно динамически загружать картинки в RecyclerView из интернета, чтобы все это дело не тормозило и было более...

RecyclerView использование ItemDecoration - Программирование Android
Здравствуйте! Никак не пойму, как использовать ItemDecoration не для всех элементов, а только между типами "категория" и "пункт" (то...

Android fragment + recyclerView - Программирование Android
Всем привет, помогите написать простой пример такой программы: Есть 1 активность (при запуске на ней отображен фрагмент1, в котором...

Принцип работы RecyclerView - Программирование Android
Можете объяснить принципп работы RecyclerView во время скроллинга? Как он заполняется элементами? Сколько элементов находится в каждый...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MonStar
19 / 19 / 3
Регистрация: 10.04.2011
Сообщений: 225
10.04.2016, 13:07     RecyclerView click #2
RecyclerView сам по себе не поддерживает нажатие по айтемам списка, нужно вешать на каждый итем отдельный слушатель. Соответственно и состояния эти обрабатывать ручками.
YuraAAA
1567 / 1309 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
10.04.2016, 13:19     RecyclerView click #3
Shamsik, а чтобы был эффект нажатия по material design, надо использовать Cardview
Ответ Создать тему
Опции темы

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