我想在列表字段中添加一个搜索框。这样当我输入一个字母时,它将显示以字母 'A' 开头的名称,依此类推。我正在使用 Vector 来保存与显示的图像相同的联系人列表:
问问题
141 次
2 回答
1
如果要从联系人中进行选择,请使用该ContactList.choose()
方法。
不要尝试每次都遍历您自己的整个联系人。请记住,有很多人拥有数千个联系人,您的代码将非常迟钝。
请参阅:https ://stackoverflow.com/a/4436816/371534
但是,如果您想在某些其他数据中使用“在键入时进行过滤KeywordFilterField
”的功能,请使用. 您可以在 BlackBerry JDK 示例中获取它的示例代码。
于 2013-08-09T18:06:17.723 回答
0
为您的 EditField设置一个FieldChangeListener
(或监听字母数字按键)。然后每次刷新列表。过滤以 EditField 中包含的字符串开头的条目。
我在没有安装黑莓插件的电脑上写了这个,所以无法测试它,但它应该是这样的。
String prefix = editField.getText();
Enumeration e = list.items();
while(e.hasMoreElements())
{
PIMItem item = (PIMItem) e.nextElement();
String name = item.getString(PIMItem.NAME,0);
if (name.startsWith(prefix))
{
//TODO display on screen
}
}
于 2013-07-24T14:25:37.467 回答