簡體   English   中英

如何在導航抽屜中添加功能搜索欄?

[英]How to add a functional search bar to a navigation drawer?

我正在開發一種牆紙應用程序,該應用程序可從Picasa加載其圖像。我有一個導航抽屜,可從Picasa相冊名稱中檢索其商品名稱(我正在使用本教程的源代碼鏈接 ),所以我想添加一個用於過濾的搜索欄導航抽屜中的項目,關於如何完成此操作的任何想法?

可能會晚一點。 但可能會幫助別人。

  1. 將EditText添加到導航抽屜。(activity_main.xml)

     <EditText android:id="@+id/inputSearch" android:layout_width="match_parent" android:layout_height="40dp" android:layout_margin="10dp" android:hint="search" android:padding="10dp" android:layout_marginTop="25dp" android:inputType="text" > </EditText> 
  2. 將TextWatcher添加到editText。 onCreate添加到onCreate

      final EditText inputSearch = (EditText) findViewById(R.id.inputSearch); inputSearch.addTextChangedListener(new TextWatcher() { @Override public void onTextChanged(CharSequence cs, int arg1, int arg2, int arg3) { // TODO Auto-generated method stub //You should use the adapter in NavigationDrawerFragment NavigationDrawerFragment.adapter.getFilter().filter(cs); } @Override public void beforeTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) { // TODO Auto-generated method stub } @Override public void afterTextChanged(Editable arg0) { // TODO Auto-generated method stub } }); 

希望這可以幫助。

您可以將導航抽屜ArrayAdapter包含ArrayAdapterFragment ,該Fragment實現Filterable 該適配器將包含您的Picasa相冊名稱列表。

對於搜索框,可以使用簡單的EditText來完成。 注冊一個TextWatcher ,它將偵聽文本更改事件,並在ArrayAdapter.getFilter()返回的Filter上觸發Filter.filter() ,並將輸入文本作為查詢。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM