2012-03-24 26 views
1

ScreenShotAPI演示:这个盒子叫什么?

什么是在底部显示"d"叫什么小盒子?如何在我的过滤SearchView中启用它?还有什么地方可以使用?

难道这是某种Toast?我查看了API资源并找不到如何定义它。

回答

4

这是一个PopupWindow http://developer.android.com/reference/android/widget/PopupWindow.html。你不需要启用它。它的默认使用,当你你的ListView设置为

listView.setTextFilterEnabled(true); 

和PopupWindow出现在你所设置或清除过滤文本

listView.setFilterText("d"); 
+0

我查看了代码,从未看到任何地方提到的弹出窗口。 – 2012-03-24 23:24:31

+0

CTRL + F是你的朋友 – 2012-03-24 23:27:31

+0

我编辑了我的帖子来解释。它的默认实现由ListView分别AbsListView – 207 2012-03-24 23:28:34

-1

据我所知,它只是重复你输入的搜索关键字。如果你有一个没有文本框的列表来输入你的搜索关键字,它很方便知道你输入了什么。 悬崖

+0

好吧,这是一个愚蠢的答案。下次我会读这个问题。 – cliff2310 2012-03-26 22:48:05

1

我发现了如何摆脱难看的弹出窗口。诀窍是直接使用过滤器。下面的代码假定您已在自定义适配器中实现了可过滤。

public boolean onQueryTextChange(String newText) { 
    if (TextUtils.isEmpty(newText)) { 
     m_listView.clearTextFilter(); 
    } else { 
     ContactsAdapter ca = (ContactsAdapter)lv.getAdapter(); 
     ca.getFilter().filter(newText); 
     //following line was causing the ugly popup window. 
     //m_listView.setFilterText(newText); 
    } 
    return true; 
}