2016-11-25 11 views
0

Несколько строк о LogCatКак вставить поиск в панель инструментов?

11-26 01:14:04.752 16902-16902/com.androidbelieve.drawerwithswipetabs W/dalvikvm: VFY: unable to resolve   virtual method 3268: Landroid/support/v4/app/Fragment;.performOptionsMenuClosed  (Landroid/view/Menu;)V 
11-26 01:14:04.752 16902-16902/com.androidbelieve.drawerwithswipetabs D/dalvikvm: VFY: replacing opcode 0x6f at 0x04ac 
11-26 01:14:07.315 16902-16902/com.androidbelieve.drawerwithswipetabs D/AbsListView: onDetachedFromWindow 
11-26 01:14:08.896 16902-16902/com.androidbelieve.drawerwithswipetabs I/AppCompatViewInflater: app:theme is now deprecated. Please move to using android:theme instead. 
11-26 01:14:08.936 16902-16902/com.androidbelieve.drawerwithswipetabs D/AbsListView: Get MotionRecognitionManager 
11-26 01:14:08.936 16902-16902/com.androidbelieve.drawerwithswipetabs I/AppCompatViewInflater: app:theme is now deprecated. Please move to using android:theme instead. 

2-Скриншот приложения на моем телефоне.

screenshot of the app on my phoen

+2

Переполнение стека для вопросов, написанных на английском языке. http://forum.frandroid.com/forum/7-d%C3%A9veloppement/ предлагает поддержку на французском языке. (Google Translate: Stack Overflow est pour les questions écrites en anglais. Http://forum.frandroid.com/forum/7-d%C3%A9veloppement/ offre un support en français.) – CommonsWare

+0

Я понял ваше замечание. – ladougol

ответ

2

XML

I - Создайте для поиска конфигурации в searchable.xml сохраненный в каталоге Рез/XML.

<?xml version="1.0" encoding="utf-8"?> 
<searchable xmlns:android="http://schemas.android.com/apk/res/android" 
    android:label="@string/app_label" 
    android:hint="@string/search_hint" > 
</searchable> 

II - Объявите вашу поисковую активность в файле AndroidManifest.xml.

<activity android:name=".SearchActivity"> 
    <intent-filter> 
     <action android:name="android.intent.action.SEARCH" /> 
    </intent-filter> 
    <meta-data android:name="android.app.searchable" 
       android:resource="@xml/searchable"/> 
</activity> 

III- Объявить свой SearchView внутри любого layout.xml

<android.support.v7.widget.SearchView 
    android:id="@+id/search" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content"/> 

STYLING

I. Declare пользовательские стили в файле styles.xml.

<style name="SearchViewTheme" > 
    <item name="colorControlActivated">@color/amber500</item> 
    <item name="colorControlNormal">@color/green500</item> 
</style> 

II. Примените этот стиль

<android.support.v7.widget.SearchView 
    android:id="@+id/search" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    app:searchIcon="@drawable/ic_library" 
    app:theme="@style/SearchViewTheme"/> 

JAVA

I- Настройку SearchView в OnCreate методе

SearchView searchView = (SearchView) findViewById(R.id.search); 
// Sets searchable configuration defined in searchable.xml for this SearchView 
SearchManager searchManager = 
    (SearchManager) getSystemService(Context.SEARCH_SERVICE); 
searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName())); 

II- Получение поискового запроса

SearchView searchView = (SearchView) findViewById(R.id.search); 
// Sets searchable configuration defined in searchable.xml for this SearchView 
SearchManager searchManager = 
    (SearchManager) getSystemService(Context.SEARCH_SERVICE); 
searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName())); 

III- Прослушивание пользовательские входы (ge tting)

searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() { 
@Override 
public boolean onQueryTextSubmit(String query) { 
    searchFor(query); 
    return true; 
    } 

@Override 
public boolean onQueryTextChange(String query) { 
    filterSearchFor(query); 
    return true; 
    } 
}); 
+0

think you, I test this – ladougol

+0

Пожалуйста, найдите файл SearchActivity, что он содержит? – ladougol

+0

Вы имеете в виду часть JAVA? –