Android搜索活动和列表适配器

Android搜索活动和列表适配器,android,search,android-activity,adapter,android-volley,Android,Search,Android Activity,Adapter,Android Volley,让我们假设我有3个活动。它们都显示从Volley中获取的数据,因为数据来自外部API,在每个活动中,数据存储在ListView中,并且数据随我的自定义BaseAdapter一起提供(活动之间的数据不同,但它们实现了称为ListTable的公共接口,所以通常不重要) 我读了一些关于创建SearchActivity的内容,据我所知,我只是传递了一个查询,需要自己在SearchActivity中执行搜索 我的问题是,我是否可以将运行搜索的活动中包含数据的列表传递给不需要再次从外部API获取该数据的Se

让我们假设我有3个活动。它们都显示从Volley中获取的数据,因为数据来自外部API,在每个活动中,数据存储在ListView中,并且数据随我的自定义BaseAdapter一起提供(活动之间的数据不同,但它们实现了称为ListTable的公共接口,所以通常不重要)

我读了一些关于创建SearchActivity的内容,据我所知,我只是传递了一个查询,需要自己在SearchActivity中执行搜索

我的问题是,我是否可以将运行搜索的活动中包含数据的列表传递给不需要再次从外部API获取该数据的SearchActivity,然后在SearchActivity中筛选该列表以匹配我的查询

我想归档行为,无论是哪种活动,我只是将数据传递给searchActivity,它会为我过滤数据,并将数据显示在新列表中

我希望大家都能理解我的问题

也许有人以前做过这种事情,可以分享一个示例代码?

我找到了一个解决方案

首先,我在列表项中实现了Parcelable(如下)

然后我覆盖了
startActivity
(这是将数据传递给搜索小部件的唯一方法)

确保关键字数据是一个原语数组或

@Override
public void startActivity(Intent intent) {
    // check if search intent
    if (Intent.ACTION_SEARCH.equals(intent.getAction())) {
        intent.putExtra("elementsToSearch", keywordsData);
    }

    super.startActivity(intent);
}
getIntent().getExtras().getParcelableArrayList("elementsToSearch");