Develop/Android
Android SearchView 사용하기
dlsdnd345
2016. 2. 14. 18:33
Android SearchView 사용하기
안녕하세요. 이번 toolbar 를 사용하게 되면서 검색기능을 searchView 로 이용해 보았습니다 . 간단한 코드로 이쁜 search뷰가 구성이 되어서 포스팅 해보려 합니다 .

1. menu Item 추가
1
2
3
4
5
6
7
8
9
10
11
12
13
|
tools:context=".MainActivity">
<item
android:id="@+id/action_search"
android:icon="@android:drawable/ic_menu_search"
app:showAsAction="always"
app:actionViewClass="android.support.v7.widget.SearchView"
android:title="Search"/>
</menu>
|
cs |
xml 에 메뉴 속성을 SearchView 를 사용하면 화면에 구성 할 수 있습니다 .
2. ment 추가
|
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_main, menu);
}
|
cs |
여기 까지 하시면 화면에 서치뷰가 나타나고 동작하시는것을 볼수 있습니다 . 이제 검색어를 통하여 검색을 할수 있도록 구성해 보겠습니다.
4. manifast.xml 추가
1
2
3
4
5
6
7
8
9
10
11
12
|
<activity
android:name=".MainActivity"
android:theme="@style/MainAppTheme">
<intent-filter>
<action android:name="android.intent.action.SEARCH" />
</intent-filter>
<meta-data
android:name="android.app.searchable"
android:resource="@xml/searchable" />
</activity>
|
cs |
3. 리스너 추가
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_main, menu);
MenuItem searchItem = menu.findItem(R.id.action_search);
searchView = (SearchView) searchItem.getActionView();
searchView.setQueryHint(getString(R.string.edittext_search_video));
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener(){
@Override
public boolean onQueryTextSubmit(String s) {
return false;
}
@Override
public boolean onQueryTextChange(String s) {
return false;
}
});
|
cs |
위 코드를 구성 하시면
검색어 입력시 : onQueryTextChange 검색어 완료시 : onQueryTextSubmit
리서너가 동작 합니다. 위 리스너를 통해서 검색 기능을 구현 하시면 될것 같습니다.
|