实现Android 系统搜索框(有浏览记录),先看下效果:


一、配置搜索描述文件

 要在res中的xml文件加创建sreachable.xml,内容如下:

<?xml version="1.0" encoding="utf-8"?>  
<searchable  
  android:hint="@string/searchLable"  
  android:label="@string/searchLable"  
  android:searchSuggestAuthority="com.glacier.ui.SearchSuggestionProvider"  
  android:searchSuggestSelection=" ? ">  
    
</searchable>   

二、填写配置文件信息

1.搜索框的配置

<!-- 搜索动作 -->  
            <intent-filter >  
                <action android:name="android.intent.action.SEARCH" >  
                </action>  
            </intent-filter>  
  
            <meta-data  
                android:name="android.app.default_searchable"  
                android:value="MainActivity" />  
            <meta-data  
                android:name="android.app.searchable"  
                android:resource="@xml/searchable" >  
            </meta-data> 

2.保存内容的配置

<provider  
            android:authorities="com.glacier.ui.SearchSuggestionProvider"  
            android:name="com.glacier.ui.SearchSuggestionProvider" >  
        </provider> 

三、调用启动搜索框方法

//弹出搜索框
onSearchRequested();

可以重新写系统的方法做些必要的内容加载其他
@Override  
public boolean onSearchRequested(){  
    //打开浮动搜索框(第一个参数默认添加到搜索框的值)        
    startSearch(null, false, null, false);  
    return true;  
}  
    
 //得到搜索结果  
    @Override  
    public void onNewIntent(Intent intent){  
        super.onNewIntent(intent);  
        //获得搜索框里值  
        query=intent.getStringExtra(SearchManager.QUERY);  
        System.out.println(query);  
        //保存搜索记录  
        SearchRecentSuggestions suggestions=new SearchRecentSuggestions(MainActivity.this,  
                SearchSuggestionProvider.AUTHORITY, SearchSuggestionProvider.MODE);  
        suggestions.saveRecentQuery(query, null);  
        System.out.println("保存成功");  
    } 

四、记得要写存储的地方

import android.content.SearchRecentSuggestionsProvider;  
  
public class SearchSuggestionProvider extends SearchRecentSuggestionsProvider {  
  
    public final static String AUTHORITY="com.glacier.ui.SearchSuggestionProvider";  
    public final static int MODE=DATABASE_MODE_QUERIES;  
      
    public SearchSuggestionProvider(){  
        super();  
        setupSuggestions(AUTHORITY, MODE);  
    }  

 

源码下载地址

 

免费下载地址在 
http://linux.linuxidc.com/

用户名与密码都是www.linuxidc.com

具体下载目录在 /2012年资料/11月/30日/Android 系统搜索框(有浏览记录)

本篇文章来源于 Linux公社网站(www.linuxidc.com)  原文链接:
http://www.linuxidc.com/Linux/2012-11/75136.htm

Android 系统搜索框(有浏览记录)的更多相关文章

  1. android浮动搜索框

    android浮动搜索框的配置比较繁琐,需要配置好xml文件才能实现onSearchRequest()方法. 1.配置搜索的XML配置文件​,新建文件searchable.xml,保存在res/xml ...

  2. Android actionbar 搜索框

    就是实如今顶部这种搜索框. 一.这个搜索框是actionbar上的menu上的一个item.叫SearchView.我们能够先在menu选项里定义好: bmap_menu.xml: <?xml ...

  3. Android 浮动搜索框 searchable 使用(转)。

    Android为程序的搜索功能提供了统一的搜索接口,search dialog和search widget,这里介绍search dialog使用.search dialog 只能为于activity ...

  4. Android的搜索框SearchView的用法-android学习之旅(三十九)

    SearchView简介 SearchView是搜索框组件,他可以让用户搜索文字,然后显示.' 代码示例 这个示例加了衣蛾ListView用于为SearchView增加自动补全的功能. package ...

  5. Xamarin.Android 制作搜索框

    前段时间仿QQ做了一个搜索框样式,个人认为还不错,留在这里给大家做个参考,希望能帮助到有需要的人. 首先上截图(图1:项目中的样式,图2:demo样式): 不多说直接上代码: Main.axml &l ...

  6. (转)Android SearchView 搜索框

    如果对这个效果感觉不错, 请往下看. 背景: 天气预报app, 本地数据库存储70个大中城市的基本信息, 根据用户输入的或通过搜索框选取的城市, 点击查询按钮后, 异步请求国家气象局数据, 得到返回的 ...

  7. Android学习笔记_79_ Android 使用 搜索框

    1.在资源文件夹下创建xml文件夹,并创建一个searchable.xml: android:searchSuggestAuthorityshux属性的值跟实现SearchRecentSuggesti ...

  8. iOS开发UI篇 -- UISearchBar 属性、方法详解及应用(自定义搜索框样式)

    很多APP都会涉及到搜索框,苹果也为我们提供了默认的搜索框UISearchBar.但实际项目中我们通常需要更改系统默认搜索框的样式.为了实现这一目标,我们需要先搞懂 UISearchBar 的属性及方 ...

  9. Android系统移植与调试之------->build.prop生成过程分析

    本文简要分析一下build.prop是如何生成的.Android的build.prop文件是在Android编译时刻收集的各种property(LCD density/语言/编译时间, etc.),编 ...

随机推荐

  1. 解决Android Activity切换时出现白屏问题

    有些性能低的机器,在切换activity时候出现白屏一段时候后才显示正确的视图 高性能的机器可能太快看不到,但是事实是存在的, 特别是当你新开一个进程的时候,A进程的activity跳转到B进程的Ac ...

  2. win7(64位)php5.5-Apache2.4-环境安装

    一.安装配置Apache2.4.7(httpd-2.4.7-win64-VC11.zip ) 1.解压下载的安装包:httpd-2.4.12-x64-vc11-r2.zip将其放到自己的安装目录(我的 ...

  3. awk 的逻辑运算字符

    既然有需要用到 "条件" 的类别,自然就需要一些逻辑运算啰-例如底下这些:运算单元代表意义> 大于小于>= 大于或等于小于或等于== 等于!= 不等于值得注意的是那个 ...

  4. 设计模式(五)适配器模式Adapter(结构型)

      设计模式(五)适配器模式Adapter(结构型) 1. 概述: 接口的改变,是一个需要程序员们必须(虽然很不情愿)接受和处理的普遍问题.程序提供者们修改他们的代码;系统库被修正;各种程序语言以及相 ...

  5. win7系统远程连接其它计算机,并且向远程机传输文件

    首先,打开开始菜单,在程序自带的 “附件“ 中找到 "远程桌面连接"并打开,出现远程桌面对话框: 其次,在对话框左下角点击“选项”,选择“本地资源对话框”,在本地设备和资源下点击“ ...

  6. μC/OS学习资料(附Ebook)

    注意:下载地址位于文末. μC/OS-各版本源码 <嵌入式实时操作系统μC/OS-II> <嵌入式实时操作系统μC/OS-III> <μC/OSII2.52源码中文译注- ...

  7. Linux less命令

    less 工具也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具,功能极其强大.less 的用法比起 more 更加的有弹性.在 more 的时候,我们并没有办法向前面翻 ...

  8. 如何灵活使用 ActionBar, Google 音乐ActionBar 隐藏和显示效果

    ActionBar 的历史这里就不介绍了,相信大家都清楚:在一个 app 中,如果 ActionBar 运用的好,那么将会省去大量的代码,而且整个 app 效果也相当不错,大家有兴趣可以下载 goog ...

  9. 在Windows下搭建C++11 编译环境(附下载,包括mingw-build,TDM-GCC, nuwen MinGW Distro)

    由于现实的一些原因,并不是所有人都能很方便的享受到C++11 特性.特别是C++ Primer 第五版 和 The C++ Programming Language 第四版等全面C++ 11 铺开以后 ...

  10. log4net使用经验总结

    下面介绍几条我认为比较好的经验,让我们更好的运用log4net 1.web程序时不把log4net的配置文件放在web.config中 原因:一个项目随着需求的变更,配置字节会特别多,不便查阅及维护. ...