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

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

Войти
Регистрация
Восстановить пароль
 
gradus
0 / 0 / 0
Регистрация: 30.10.2015
Сообщений: 41
#1

Autocompletetextview и сквозной поиск - Программирование Android

16.11.2015, 19:56. Просмотров 199. Ответов 4
Метки нет (Все метки)

Как реализовать ?
Мурка, Муж, Мука и т.д. понятно что по первым символам ищется все гуд, но этот функционал прошлый век.
Нужно что бы при вводе "ур" выпадало "Мурка", а не только по первым символам.
Только не говорите что нужно для этого БД поднимать и через like %% использовать или вообще адаптер свой писать.
Я вообще тогда в возможностях andoid(java) разочаруюсь.
И еще бы, если список выпадает вниз и мы находимся в самом низу актива, список автоматом поднялся вверх(ну что бы никуда ничего за рамки не выходило и ближайший список был виден) или это тоже не входит с стандартное использование ?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.11.2015, 19:56     Autocompletetextview и сквозной поиск
Посмотрите здесь:

AutoCompleteTextView - Программирование Android
Здравствуйте! Объявляю автокомплит - все нормально работает. List<String> Countries = new ArrayList<String>(); ...

Не корректно работает AutoCompleteTextView - Программирование Android
Доброго времени суток. Есть AutoCompleteTextView, на реальном (не эмуляторе) Андроиде 4.1 он работает как надо, на реальном 2.3.6 и 2.2.2...

AutoCompleteTextView + база sqlite - Программирование Android
Вопрос вот в чем, имеется база и элемент AutoCompleteTextView. Задача в том, чтобы в AutoCompleteTextView подгружался столбец с названиями...

AutoCompleteTextView убрать фокус - Программирование Android
Здравствуйте. Подскажите, как убрать фокус с элемента AutoCompleteTextView при выборе подсказки? При запуске фокус я убираю...

Как подгрузить данные в AutoCompleteTextView? - Программирование Android
Здравствуйте, снова столкнулся с проблемой адаптеров. Суть такая, что при запуске определенного фрагмента в AutoCompleteTextView должны...

Ограничить число подсказок AutoCompleteTextView - Программирование Android
Как сделать так чтобы когда пользователь вводит текст в поле AutoCompleteTextView, ему отображалось только 4 подсказки а остальные можно...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Pablito
2455 / 1900 / 591
Регистрация: 12.05.2014
Сообщений: 6,702
Завершенные тесты: 1
16.11.2015, 20:08     Autocompletetextview и сквозной поиск #2
Цитата Сообщение от gradus Посмотреть сообщение
или вообще адаптер свой писать
Цитата Сообщение от gradus Посмотреть сообщение
или это тоже не входит с стандартное использование ?
Да.
gradus
0 / 0 / 0
Регистрация: 30.10.2015
Сообщений: 41
16.11.2015, 20:31  [ТС]     Autocompletetextview и сквозной поиск #3
facepalm, просто facepalm...
Mikalai
256 / 232 / 93
Регистрация: 11.01.2015
Сообщений: 653
16.11.2015, 22:19     Autocompletetextview и сквозной поиск #4
gradus, ну так можно же и готовую реализацию поискать. Например тут
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.11.2015, 22:36     Autocompletetextview и сквозной поиск
Еще ссылки по теме:

Автозаполнение AutoCompleteTextView. Что такое groceryDb? - Программирование Android
В книге Android COokbook есть глава, посвященная тому, как AutoCompleteTextView подружить с SimpleCursorAdapter. final...

Как узнать что выбрал пользователь в AutoCompleteTextView - Программирование Android
Доброго времени суток. Как узнать какую подсказку выбрал пользователь из AutoCompleteTextView ? И как сделать чтоб например если выбрал...

Не работает AutoCompleteTextView для ArrayList собственного класса - Программирование Android
Добрый день. Я создал на форме AutoCompleteTextView и передаю в него ArrayList, состоящий из элементов, созданного класса Person: ...

Автовыбор при единственном значении в списке значений AutocompleteTextView - Программирование Android
Делал свой список выбора значений по данной статье: https://habrahabr.ru/post/243853/. Только для городов. Всё работает отлично....


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

Или воспользуйтесь поиском по форуму:
gradus
0 / 0 / 0
Регистрация: 30.10.2015
Сообщений: 41
16.11.2015, 22:36  [ТС]     Autocompletetextview и сквозной поиск #5
Mikalai, да я то уже нашел.
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.Filter;
import android.widget.Filterable;
 
import java.util.ArrayList;
import java.util.List;
 
public class AutoCompleteAdapter extends ArrayAdapter<String> implements Filterable {
 
    private ArrayList<String> fullList;
    private ArrayList<String> mOriginalValues;
    private ArrayFilter mFilter;
 
    public AutoCompleteAdapter(Context context, int resource, int textViewResourceId, List<String> objects) {
 
        super(context, resource, textViewResourceId, objects);
        fullList = (ArrayList<String>) objects;
        mOriginalValues = new ArrayList<String>(fullList);
 
    }
 
    @Override
    public int getCount() {
        return fullList.size();
    }
 
    @Override
    public String getItem(int position) {
        return fullList.get(position);
    }
 
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        return super.getView(position, convertView, parent);
    }
 
    @Override
    public Filter getFilter() {
        if (mFilter == null) {
            mFilter = new ArrayFilter();
        }
        return mFilter;
    }
 
 
    private class ArrayFilter extends Filter {
        private Object lock;
 
        @Override
        protected FilterResults performFiltering(CharSequence prefix) {
            FilterResults results = new FilterResults();
 
            if (mOriginalValues == null) {
                synchronized (lock) {
                    mOriginalValues = new ArrayList<String>(fullList);
                }
            }
 
            if (prefix == null || prefix.length() == 0) {
                synchronized (lock) {
                    ArrayList<String> list = new ArrayList<String>(mOriginalValues);
                    results.values = list;
                    results.count = list.size();
                }
            } else {
                final String prefixString = prefix.toString().toLowerCase();
 
                ArrayList<String> values = mOriginalValues;
                int count = values.size();
 
                ArrayList<String> newValues = new ArrayList<String>(count);
 
                for (int i = 0; i < count; i++) {
                    String item = values.get(i);
                    if (item.toLowerCase().contains(prefixString)) {
                        newValues.add(item);
                    }
 
                }
 
                results.values = newValues;
                results.count = newValues.size();
            }
 
            return results;
        }
 
        @SuppressWarnings("unchecked")
        @Override
        protected void publishResults(CharSequence constraint, FilterResults results) {
 
            if(results.values!=null){
                fullList = (ArrayList<String>) results.values;
            }else{
                fullList = new ArrayList<String>();
            }
            if (results.count > 0) {
                notifyDataSetChanged();
            } else {
                notifyDataSetInvalidated();
            }
        }
    }
}
Yandex
Объявления
16.11.2015, 22:36     Autocompletetextview и сквозной поиск
Ответ Создать тему
Опции темы

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