Android: виджет поиска ActionBarSherlock - PullRequest
7 голосов
/ 29 марта 2012

В настоящее время в магазине игр есть приложение для планшетов и смартфонов под управлением Android 3.0+ (http://tinyurl.com/cnejnjs).). Чтобы привлечь больше пользователей, я стремлюсь заставить приложение работать на большом количестве устройств..

Я знаю о ActionBar Sherlock, и кажется, что он делает почти все, что я хочу. Единственное, что он не предлагает, это Виджет поиска , который я использую в текущем приложении.

Есть ли способ иметь поле поиска на панели действий, которое обновляет текущий фрагмент списка на экране аналогично тому, как работает виджет поиска по умолчанию?

1 Ответ

19 голосов
/ 29 марта 2012

Виджет поиска - это просто расширяемый элемент действия. Вы можете очень легко создать свой собственный, используя EditText в качестве расширенного макета. Вы можете увидеть это в примере «Складной элемент действия» из Демонстраций возможностей (хотя это только очень простой пример).

Вы также можете использовать встроенный виджет на Honeycomb и выше из библиотеки совместимости:

Context context = getSupportActionBar().getThemedContext();
View searchView = SearchViewCompat.newSearchView(context);
if (searchView != null) {
    //Use native implementation
} else {
    //Use simple compatibility implementation
}

Поддержка реализации совместимости на 99% также в планах .

...