【问题标题】:Blackberry, searching contacts from list黑莓,从列表中搜索联系人
【发布时间】:2013-07-24 13:14:30
【问题描述】:

我想在列表字段中添加一个搜索框。这样当我输入一个字母时,它将显示以字母 'A' 开头的名称,依此类推。我正在使用 Vector 来保存与显示的图像相同的联系人列表:

【问题讨论】:

    标签: eclipse blackberry blackberry-jde


    【解决方案1】:

    如果您想从联系人中进行选择,请使用ContactList.choose() 方法。

    不要每次都尝试遍历自己的整个联系人。请记住,有很多人拥有数千个联系人,您的代码将非常迟钝。

    见:https://stackoverflow.com/a/4436816/371534

    但是,如果您希望使用“键入时过滤”功能以及其他一些数据,请使用KeywordFilterField。您可以在 BlackBerry JDK 示例中获取它的示例代码。

    【讨论】:

      【解决方案2】:

      为您的 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
          }
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多