[英]Search function on action bar for list view
我需要幫助才能實現操作欄上的搜索功能 。 我本教程展示了如何使用簡單的列表項執行列表視圖,而我的代碼使用自定義Adapter類。
而不是getVeiw方法上的這段代碼:
view = getLayoutInflater().inflate(R.layout.list_black_text, null);
用這個
if (view == null) {
LayoutInflater inflater = (LayoutInflater) getSystemService(Activity.LAYOUT_INFLATER_SERVICE);
view= inflater.inflate(R.layout.list_black_text, null);
}
也許這對你有用
看起來您的searchView為null。 代替這個:
inflater.inflate(R.menu.menu, menu);
MenuItem searchItem = menu.findItem(R.id.item_search);
SearchView searchView = (SearchView) MenuItemCompat.getActionView(searchItem);
用這個:
inflater.inflate(R.menu.menu, menu);
MenuItem searchItem = menu.findItem(R.id.item_search);
SearchView searchView = (SearchView) searchItem.getActionView();
並查看文檔 。
編輯
我復制了您的代碼並進行了測試。 我發現一個錯誤。 我不知道這是另一個錯誤還是您遇到的相同錯誤。
聲明ListView變量時,將設置為全局范圍,但是當給它一個值(R.id.listView值)時,則是聲明另一個具有方法范圍的ListView變量。
不要這樣做ListView listView = (ListView) findViewById(R.id.listView);
執行此listView = (ListView) findViewById(R.id.listView);
進行更改,此行: listView.setAdapter(customAdapter);
不會給你NullPointerException。
我希望修復您的代碼。 在其他情況下,您應該將logcat輸出放入問題中以獲取更多詳細信息。 以及您將來的問題;)。
這行代碼為您提供了空指針異常,因為它在當前布局中不存在。 檢查您的xml File man!
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener(){
並瀏覽您的代碼中缺少內容; 搜索后視圖聲明
SearchView searchView =(SearchView)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.