没有合适的资源?快使用搜索试试~ 我知道了~
Settings搜索.docx
需积分: 34 7 下载量 179 浏览量
2020-03-11
20:08:42
上传
评论
收藏 1.39MB DOCX 举报
温馨提示
试读
12页
文档主要详细解释了Android9.0下Settings搜索功能的实现原理,以及定制修改的方法文档主要详细解释了Android9.0下Settings搜索功能的实现原理,以及定制修改的方法
资源推荐
资源详情
资源评论
1
by 潮流网络@jfdeng
Settings 搜索说明文档
简介
Settings 搜索是单独的一个模块,此文档主要讲解 9.0 上的原生搜索的功能,其源码位于
android/packages/apps/SettingsIntelligence 下,SettingsIntelligence 是一个单独的应用
下面简单描述下搜索的主要业务流程:
1.Settings 中点击搜索框,跳转至 SettingsIntelligence 中的搜索页面,即 SearchActivity
而 SearchActivity 又切换到了 SearchFragment.
2.SearchFragment 中,SearchFeatureProviderImpl 配合 loaderManager,获取到数据库中的数据,
然后返回给 Adapter,并绑定到 RecycleView 中显示
3.在 onBindViewHolder 时通过 onBind 实现对应点击事件的跳转
数据获取
很疑惑,SettingsIntelligence 中数据库的数据是怎么来的呢,是如何获取到的 Settings 中的相关
页面的数据的呢?流程如下:
1.SearchFragment 创建时进行了一些对象创建,如,也包括数据的初始化,如
mSavedQueryController,SearchFeatureProviderImpl 等等,mSearchFeatureProvider 调用
2
by 潮流网络@jfdeng
updateIndexAsync 开启数据库的初始化
2.监听 searchview 输入框,通过 restartLoaders 调用 loaderManager 开启加载数据流程
3
by 潮流网络@jfdeng
3.load 创建成功回调至 onCreateLoader
4.mSearchFeatureProvider 调用 getSearchResultLoader 方法,得到 SearchResultLoader 对象,
SearchResultLoader 在子线程中进行数据查找 loadInBackground
5.loadInBackground 时通过 SearchResultAggregator 的 fetchResults 进行数据查找以及过滤.并
且创建了一个 task 集合,然后遍历的形式开启了 task 让其执行.之后将执行的结果返回到了
taskResult 结果集中
剩余11页未读,继续阅读
资源评论
我是杰夫啊
- 粉丝: 37
- 资源: 35
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功