关于android的搜索实现问题

时间:2014-05-03 19:15:58

标签: android xml search implements

我是这里的新手,希望你能帮助我明白我的一些理解(或误解)。我已经阅读了几天,并尝试基于Android指南实现搜索功能,但它确实没有很好的工作。也许我的整个概念都是错误的,所以如果你能善待,请帮助我。

我有一个应用程序,其数据来自远程xml,我想实现搜索功能。我有一个主要活动(在我的SRC - >我的包下)列出了从xml中检索到的所有数据。我的问题:

1)在指南中,我们看到我们必须定义一个.Searchable Activity。我以为这是处理搜索查询并存储结果?如果是这种情况,我是否需要创建新活动,或者我可以将我的主要活动用作.Searchable Activity?

2)完成上述项目后,我想我需要创建一个活动来接收结果并做一些事情。我接受它,因为我需要在项目1中定义的活动中创建“公共类SearchableActivity extends ListActivity”?问题是我不知道该怎么做,因为指南不完整。

3)假设我成功完成并在搜索时返回了一些结果,如何在主要活动中显示(或过滤以显示搜索结果)?我不希望有另一个UI来显示结果,因为我更喜欢它只是获取过滤器来显示匹配的记录

4)最后,由于我的数据来自远程xml,我是否需要基于远程xml“搜索”,否则它将根据应用程序上的缓存信息进行搜索?

我很抱歉这么无知,但我是全新的,希望你能帮助我。到目前为止,我没有问题,让我的操作栏上显示对话框。唯一的问题是搜索根本不起作用:(搜索时,没有任何事情发生。

非常感谢提前。干杯!

1 个答案:

答案 0 :(得分:0)

要在列表中搜索,您可以使用android的内置函数,但如果您想要一个好的结果,您可以使用自己的函数。最简单的功能是:

for(int i = 0 ; i < arraylisy.size() ; i++)
{
    if(arraylist.get(i) == youobject)
        return true;
}
return false;

但是您可以使用更好的功能,例如binary search。 现在,如何创建搜索活动?

首先:创建XML文件并在其中添加listview 第二步:创建java文件并将xml文件链接到它 现在使用上面的代码来搜索列表中的对象。如果在每次搜索中都找到了几个项目,则将它们添加到新的列表视图中。

现在创建一个适配器并将搜索列表发送给它 最后将适配器设置为listview。