標籤:
前言
searchview是安卓常用的搜尋控制項,網上有很多關於searchview都是java的,所以我參看xamaroin官網的一些demo總結一些方法。
導讀
1.如何建立一個searchview
2.searchview的常用事件
3.如何使用searchview
本文
1.如何建立一個searchview
建立一個searchview很簡單,我們只需要建立一個布局檔案,然後重寫OnCreateOptionsMenu即可。
,在Resources檔案夾下建立一個檔案夾名為Menu,在檔案夾內建立一個xml布局檔案。
search.xml
<?xml version="1.0" encoding="utf-8" ?> <menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/search" android:title="Search" android:showAsAction="ifRoom" android:actionViewClass="android.widget.SearchView" /> </menu>
這樣我們的布局檔案就建好了,然後重寫OnCreateOptionsMenu即可。
public override bool OnCreateOptionsMenu(IMenu menu) { MenuInflater.Inflate(Resource.Menu.search, menu); var searchView = (SearchView)menu.FindItem(Resource.Id.search).ActionView;return true; }
最終如下:
這樣我們的searchview就算建立完成了。
2.searchview的主要方法
searchview的作用無非就是進行搜尋,那我們常用到的事件就包括這幾種:
OnQueryTextListener 查詢內容發生改變時調用
OnCloseListener 關閉searchview時調用
onQueryTextChange 查詢的文字欄位的新內容,相當於邊寫邊搜
onQueryTextSubmit 查詢要提交的查詢內容
onClose 關閉searchview時觸發的事件
下面就用代碼示範這幾種事件的使用用法
3.如何使用searchview
調用這個方法首先要繼承searchview類
public class Activity1 : SearchView.IOnQueryTextListener,SearchView.IOnCloseListener
這裡同時繼承了IOnQueryTextListener與IOnCloseListener,如果不繼承這個類就會提示類型無法轉換的錯誤。
繼承之後我們就可以設定監聽事件,同樣是重寫OnCreateOptionsMenu。
searchView.SetOnQueryTextListener(this);searchView.SetOnCloseListener(this);
設定完監聽事件即可重寫這幾種方法
public bool OnQueryTextChange(string newText) { return true; } public bool OnQueryTextSubmit(string query) { return true; } public bool OnClose() { return true; }
圖片示範
xamarin android searchview的一些用法