Простой способ поиска в представлении переработчика без постоянно включенного представления поиска.
Как это работает?
Вам когда-нибудь хотелось просмотреть переработчик с панелью поиска? Это простая библиотека, которая позволяет вам поместить ваш recyclerView в мой собственный макет, который обеспечивает скрытое представление поиска, которое вы можете показать, прокручивая ресайклер вверх/вниз.
Чтобы включить эту библиотеку в свой проект Android, вам нужно использовать gradle
.
compile ' com.nicolettilu:hiddensearchwithrecyclerview:0.0.5 '
Вот как это работает:
< com .nicolettilu.hiddensearchwithrecyclerview.HiddenSearchWithRecyclerView
android : layout_width = " match_parent "
android : layout_height = " match_parent " >
< androidx .recyclerview.RecyclerView
android : layout_width = " match_parent "
android : layout_height = " match_parent " />
</ com .nicolettilu.hiddensearchwithrecyclerview.HiddenSearchWithRecyclerView>
Вам необходимо обернуть RecyclerView
пользовательским макетом, предоставляемым библиотекой. На данный момент библиотека предоставляет следующие конфигурации:
< attr name = " filterWhileTyping " format = " boolean " /> <!-- default value: true -->
< attr name = " scrollToTopBeforeShow " format = " boolean " /> <!-- default value: false -->
< attr name = " scrollToBottomBeforeHide " format = " boolean " /> <!-- default value: false -->
< attr name = " visibleAtInit " format = " boolean " /> <!-- default value: false -->
< attr name = " hideAtScroll " format = " boolean " /> <!-- default value: true -->
Вы можете настроить эти атрибуты в XML-файле:
< com .nicolettilu.hiddensearchwithrecyclerview.HiddenSearchWithRecyclerView
android : id = " @+id/hidden_search_with_recycler "
android : layout_width = " match_parent "
android : layout_height = " match_parent "
app : scrollToBottomBeforeHide = " true "
app : scrollToTopBeforeShow = " true "
app : filterWhileTyping = " false "
app : visibleAtInit = " true " >
<!-- your RecyclerView here -->
</ com .nicolettilu.hiddensearchwithrecyclerview.HiddenSearchWithRecyclerView>
И в коде также:
val hiddenSearchWithInRecycler = findViewById( R .id.hidden_search_with_recycler) as HiddenSearchWithRecyclerView
hiddenSearchWithInRecycler.hideAtScroll = true
hiddenSearchWithInRecycler.visibleAtInit = false
hiddenSearchWithInRecycler.scrollToBottomBeforeHide = false
hiddenSearchWithInRecycler.scrollToTopBeforeShow = false
hiddenSearchWithInRecycler.filterWhileTyping = true
Вот пример результатов:
Пример по умолчанию | Прокрутите вверх/вниз, прежде чем скрыть/показать SearchView | SearchView показан в примере инициализации |
---|---|---|
Copyright © 2018
Luca Nicoletti
Настоящим бесплатно любому лицу, получившему копию данного программного обеспечения и связанных с ним файлов документации («Программное обеспечение»), предоставляется разрешение на работу с Программным обеспечением без ограничений, включая, помимо прочего, права на использование, копирование, изменение, объединение. публиковать, распространять, сублицензировать и/или продавать копии Программного обеспечения, а также разрешать лицам, которым предоставлено Программное обеспечение, делать это при соблюдении следующих условий:
Вышеупомянутое уведомление об авторских правах и данное уведомление о разрешении должны быть включены во все копии или существенные части Программного обеспечения.
ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРЕДОСТАВЛЯЕТСЯ «КАК ЕСТЬ», БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ, ЯВНЫХ ИЛИ ПОДРАЗУМЕВАЕМЫХ, ВКЛЮЧАЯ, НО НЕ ОГРАНИЧИВАЯСЬ, ГАРАНТИЯМИ КОММЕРЧЕСКОЙ ЦЕННОСТИ, ПРИГОДНОСТИ ДЛЯ ОПРЕДЕЛЕННОЙ ЦЕЛИ И НЕНАРУШЕНИЯ ПРАВ. НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ АВТОРЫ ИЛИ ОБЛАДАТЕЛИ АВТОРСКИХ ПРАВ НЕ НЕСУТ ОТВЕТСТВЕННОСТИ ЗА ЛЮБЫЕ ПРЕТЕНЗИИ, УБЫТКИ ИЛИ ДРУГУЮ ОТВЕТСТВЕННОСТЬ, БУДЬ В ДЕЙСТВИЯХ ПО КОНТРАКТУ, ПРАВОНАРУШЕНИЮ ИЛИ ДРУГИМ ОБРАЗОМ, ВОЗНИКАЮЩИЕ ОТ, ИЗ ИЛИ В СВЯЗИ С ПРОГРАММНЫМ ОБЕСПЕЧЕНИЕМ ИЛИ ИСПОЛЬЗОВАНИЕМ ИЛИ ДРУГИМИ СДЕЛКАМИ, ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ.