1

我是 Black berry 开发的初学者,因为如何自定义搜索结果而不是在我的文本框中使用。

我想在我的黑莓应用程序中实现动态搜索功能,用户在文本字段中输入一个字符,匹配的内容将显示在列表下方。

现在在这里我已经实现了,但我想要的只是应该显示文本字段,而不是 KeywordFilterField 附带的内置列表字段。

当文本更改时,自定义列表会自动填充,因为我在 Fieldchanged() 事件中进行了编码,但内置列表也显示了我不想要的。在此处输入图像描述]![在此处输入图像描述

正如您在图像中看到的那样,我想要文本字段,我不想要默认列表字段,我想要自定义列表字段(它可以正常工作,没有问题)。

4

1 回答 1

1

得到了解决方案或我们可以说的技巧。

首先,我们必须将 KeywordFilterField 实现到应用程序注释中,我们不能将它添加到我们的屏幕中,我们将使用 KeywordFilterfield 的功能。

现在我们需要在 fieldChanged() 事件中将 TextField 添加到屏幕中,只需为 KeywordFilterField 设置关键字。如下。

   public void fieldChanged(Field field, int context) {
        // TODO Auto-generated method stub

        SearchTextBox temp=(SearchTextBox)field;
        _keywordFilterField.setKeyword(temp.getText());
    }

现在,一旦我们设置了关键字,就会触发 KeywordFilterField 的更改侦听器,因此我们可以编写代码来显示自定义列表字段,如下所示

_keywordFilterField.setChangeListener(new FieldChangeListener() {

    public void fieldChanged(Field field, int context) {

        KeywordFilterField k=(KeywordFilterField)field;

        //Use k.getResultList(); method to fetch the resulting elements.

        //Write the code here for custom list to display.   
        }

});

于 2012-09-13T08:55:20.863 回答