1 | ||||||
Searchview в toolbar06.04.2016, 16:03. Показов 4833. Ответов 19
Доброго времени суток уважаемые форумчане.
Нужна Ваша помощь в реализации поиска. Есть несколько фрагментов, и searchview в toolbar-е как осуществить поиск для каждого фрагмента через этот searchview. как к нему обращаться и как нужно настроить. вот сам код и при таком обращении программа рушиться и закрывается выдав ошибку приложения
эххх никто не хочет помогать((
0
|
06.04.2016, 16:03 | |
Ответы с готовыми решениями:
19
Скрыть тулбар у 1 фрагмента Tabbed Activity + toolbar + Searchview Как добавить динамически в ToolBar виджет SearchView в нужных фрагментах SearchView в ActionBar SearchView ругается на Listener? |
426 / 406 / 68
Регистрация: 06.10.2012
Сообщений: 1,748
|
|
06.04.2016, 16:23 | 2 |
Сообщение было отмечено rusik1994 как решение
Решение
rusik1994, привет!
Ну, для начала надо бы привести код в порядок. В принципе, каждый решает эту задачу самостоятельно, примеров масса на разные случаи жизни. Подводных камней - тоже. Писать простыню кода лень.
1
|
06.04.2016, 16:41 [ТС] | 3 |
CoolMind, ну если я использую компонент Search в самом фрагменте то поиск работает, а как сделать так чтобы android.support.v7.widget.SearchView в толбаре использовать для поиска в разных fragmentax. как нужно настроить и что нужно прописывать в манефесте если не составит труда объясните новичку
Добавлено через 2 минуты CoolMind, делал поиск с помощью Edit все прекрасно работало а вот с этим виджетом никак не получается подружиться Добавлено через 11 минут CoolMind, А что в коде не так то)))?
0
|
06.04.2016, 17:37 [ТС] | 5 | |||||
Паблито, щас попробую
Добавлено через 3 минуты Паблито, если я заменяю как вы написали то ругается в главном активити
0
|
426 / 406 / 68
Регистрация: 06.10.2012
Сообщений: 1,748
|
|
06.04.2016, 17:41 | 6 |
Сообщение было отмечено rusik1994 как решение
Решение
Насколько я помню, события набора текста в toolbar'е делаются в активности, там срабатывает слушатель (listener), который вызывает поиск (фильтрацию) в активном фрагменте. Т.е. вам нужно уметь передавать данные из активности в текущий фрагмент. Обычно это делается через listener'ы, но можно и некоторыми другими способами.
Добавлено через 2 минуты Если используете Fragment совместно с support-библиотекой, надо привести к "одному знаменателю" все связанные библиотеки и методы в разных классах. Например, FragmentManager тоже будет support-v4.
1
|
06.04.2016, 17:51 [ТС] | 7 | |||||
изменил все как вы написали теперь когда вызываю из меню переход на фрагмент где хочу сделать поиск то выводит следующее
0
|
426 / 406 / 68
Регистрация: 06.10.2012
Сообщений: 1,748
|
|
06.04.2016, 17:54 | 8 |
Сообщение было отмечено rusik1994 как решение
Решение
rusik1994, в строке fragment_slovar.java:45 происходит вызов метода ну пустом объекте.
1
|
07.04.2016, 10:34 [ТС] | 9 | ||||||||||
вот код фрагмента
CoolMind, ругается на вызов функции
хотя если вместо searchview из тоолбара вызываю searchview который на самом фрагменте никаких ошибок нет и программа корректно работает и производит фильтрацию Добавлено через 34 секунды может в манифесте что то нужно прописать? Добавлено через 4 минуты это что получается что фильтрация вызывается сразу при попытке вызвать данный фрагмент? Добавлено через 16 часов 25 минут CoolMind, а как установить слушателя (Listener) для searchView в фрагменте? а то как только не перепробовал никак не хочет пробовал запускать фильтрацию после получения фокуса SearchView тоже безрезультатно(((
0
|
426 / 406 / 68
Регистрация: 06.10.2012
Сообщений: 1,748
|
|
07.04.2016, 18:56 | 10 |
Сообщение было отмечено rusik1994 как решение
Решение
rusik1994, ну как, получилось?
Вы фильтрацию внутри адаптера прописали?
1
|
07.04.2016, 19:22 [ТС] | 11 | ||||||||||||||||||||
CoolMind, нет не получилось(((
наверху отправил весь код фрагмента может подскажете где ошибки у меня там Добавлено через 7 минут CoolMind, вот весь код фрагмента
вот лог при попытке перейти на фрагмент где нужно произвести поиск вот лог
и вот сама разметка
и вот сам файл меню откуда собственно и хочу произвести фильтрацию
0
|
2883 / 2295 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
|
||||||
08.04.2016, 14:47 | 12 | |||||
Сообщение было отмечено rusik1994 как решение
Решение
пример как работать с ним, не совсем точный, но кто захочет - почитает и сделает выводы Поиск в ListView с помощью SearchView
1
|
08.04.2016, 19:14 [ТС] | 13 | ||||||||||
Паблито, уважаемый,Вы мне лучше подскажите как в фрагменте получить доступ к этому элементу. как установить для него слушатель. мне что нужно и в фрагменте вызывать onCreateOptionsMenu и уже там все это описывать?
Добавлено через 4 минуты Паблито, сам фрагмент у меня наследуется так public class fragment_slovar extends Fragment и все действия и прописываю внутри public View onCreateView вот таким образом
Паблито, если я прописываю таким образом
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { setHasOptionsMenu(true);
0
|
2883 / 2295 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
|
||||||
08.04.2016, 19:30 | 16 | |||||
Сообщение было отмечено rusik1994 как решение
Решение
лично я бы сделал так что бы у фрагмента было свое меню
тогда вообще никаких проблем вытянуть оттуда нужный пункт в конструкторе фрагмента пишется setHasOptionsMenu(true); и переопределяем метод
1
|
08.04.2016, 19:39 [ТС] | 17 | |||||
Паблито, а на отображение тех элементов которые уже объявлены в основном файле не повлияет такой подход?
Добавлено через 5 минут Паблито, это все прописывать внутри
0
|
2883 / 2295 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
|
|
08.04.2016, 19:46 | 18 |
Сообщение было отмечено rusik1994 как решение
Решение
стирает все пункты меню, которые были в активити, если стирать не нужно то и строка эта не нужна
при закрытии фрагмента меню акивити должно вернуться в исходное состояние...по идее, проверить что мешает?
1
|
08.04.2016, 21:06 [ТС] | 19 | |||||
Паблито, сейчас попробую)))
Добавлено через 8 минут Паблито, ну добавить элемент получилось а как теперь обращаться к нему из public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { setHasOptionsMenu(true); Добавлено через 1 час 5 минут Паблито,
0
|
11.04.2016, 20:47 [ТС] | 20 |
так и не объяснил никто как решить проблему мою(((
0
|
11.04.2016, 20:47 | |
11.04.2016, 20:47 | |
Помогаю со студенческими работами здесь
20
Поиск в ListView с помощью SearchView Отследить закрытие SearchView Android Спрятать SearchView в некоторых фрагментах Передать SearchView из активити во фрагмент Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |