`

android 系统搜索框的使用及获取输入

 
阅读更多



 效果如上图:

 

1。配置文件中 <activity 

            android:label="@string/app_name"
            android:name=".SoftKey" >
            <intent-filter> 
               <action android:name="android.intent.action.SEARCH" /> 
               <category android:name="android.intent.category.DEFAULT" /> 
           </intent-filter> 
             <meta-data android:name="android.app.searchable" 
                      android:resource="@xml/searchable" /> 
            <intent-filter >
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
 声明处理搜索的Activity
              <meta-data android:name="android.app.default_searchable" android:value=".SoftKey"/>
          
        </activity>

 2 searchable.xml定义 

<?xml version="1.0" encoding="utf-8"?>
<searchable xmlns:android="http://schemas.android.com/apk/res/android"
    android:hint="@string/searchHint"
    android:label="@string/searchLabel" />
3 如果当前的Activity就是响应搜索请求的Activity时,会有以下两种情况:

默认情况下,ACTION_SEARCH Intent将会创建一个新的Activity,并调用onCreate()方法,这个新的Activity会显示在最前面,你将同时有两个Activity实例。当你按“返回”键里,会回到没有执行搜索前的一个Activity。

另一种情况是配置了android:launchMode=”singleTop”的Activity,这时,我们需要

在 onNewIntent(Intent)方法中处理搜索请求,如下所示: 

 @Override

   protected void onNewIntent(Intent intent) {

       setIntent(intent);

       handleIntent(intent);

   }

    

   private void handleIntent(Intent intent) {

       if (Intent.ACTION_SEARCH.equals(intent.getAction())) {

//获取输入

         String query = intent.getStringExtra(SearchManager.QUERY);

       

        

         System.out.println(query);

       }

   }

如果没有声明开启模式的话,可以在oncreate()使用

 Intent intent = getIntent();
		//判断是否是搜索请求
		    if (Intent.ACTION_SEARCH.equals(intent.getAction())) {
		System.out.println(intent.getStringExtra(SearchManager.QUERY));}

 如果你要在执行搜索时,进行别的操作,可以重写onSearchRequested()方法,如下所示:

  @Override 

   public boolean onSearchRequested() {

 

       Bundle appDataBundle = new Bundle(); 

       appDataBundle.putString("demo_key", "dddd");

 

       startSearch("搜索", false, appDataBundle, false); 

       return true; 

   }

  • 大小: 93 KB
分享到:
评论
1 楼 yuansuruanjian 2012-07-16  
在哪里指明将要跳转到的Activity的名字 比如想跳到另一个Activity 在哪儿写

相关推荐

    Android开发教程之Android系统搜索对话框(浮动搜索框)的使用--千锋培训

    本教程将指导你如何在你的应用程序中使用Android的搜索对话框(浮动搜索框)。 首先,你需要创建一个搜索对话框的配置文件。这个文件通常命名为`searchable.xml`,并存储在`res/xml`目录下。配置文件的主要目的是...

    android 浮动搜索框

    一、Android搜索框基础 1. EditText与SearchView:在Android中,基础的文本输入组件是EditText,但为了实现搜索功能,我们通常会使用SearchView。SearchView不仅提供了文本输入框,还包含了清除按钮、搜索建议等...

    Android通用的搜索框源码

    本篇文章将深入探讨如何实现一个通用的Android搜索框,并提供相关的源码解析。 首先,通用搜索栏的设计应具备以下特性: 1. **可定制性**:为了适应不同的UI设计和功能需求,搜索框需要具有高度的可定制性,包括但...

    android系统浮动搜索框

    在Android系统中,浮动搜索框(FloatSearchBox)是一种常见的用户界面组件,它提供了一种高效、直观的方式来实现搜索功能。这种设计模式通常用于应用程序,尤其是那些需要快速访问搜索功能或者在多信息环境中导航的...

    Android调用系统的浮动搜索框实现搜索功能

    首先,我们要明白系统浮动搜索框(通常称为全局搜索)是Android系统提供的一种全局搜索机制,它允许用户在任何界面下快速调出搜索框进行全局搜索。这种功能不仅限于应用内部,还可以延伸到整个设备甚至网络上的内容...

    Android搜索框变色

    在Android应用开发中,搜索框(SearchView)是常见的用户界面元素,用于提供用户输入查询内容的功能。在一些设计中,为了提升用户体验和界面交互性,我们可能会希望搜索框的颜色随着页面的滚动而动态变化。这通常是...

    Android webview 搜索框

    在Android应用开发中,WebView是一个非常重要的组件,它允许开发者在应用程序内嵌入网页内容,实现类似浏览器的功能。...通过研究这些资源,你可以深入学习和掌握Android WebView与搜索框的结合使用。

    android搜索框,带历史记录功能

    本文将深入探讨如何在Android中创建一个带有历史记录功能的搜索框,并结合给定的"android搜索框,带历史记录功能"的项目标题及描述,给出详细的知识点解析。 首先,我们要理解Android的SearchView组件。SearchView...

    Android搜索框

    在Android应用开发中,搜索框...以上是对"Android搜索框"项目的基本理解和知识点解析,实际的实现细节可能根据项目的具体需求有所不同。通过理解和实践这些知识点,开发者可以创建出功能强大且用户体验良好的搜索功能。

    android 搜索框

    在Android开发中,搜索框(Search View)是一个重要的组件,用于提供用户输入查询并执行搜索功能的界面元素。本文将详细介绍如何在Android中实现搜索框,主要关注XML布局和继承RelativeLayout这两种方法,以及它们在...

    android浮动搜索框(SearchManager).zip

    本教程将深入探讨如何使用SearchManager来创建一个浮动搜索框,以及相关的源码分析。 一、SearchManager概述 SearchManager是Android系统提供的服务,用于管理系统的全局搜索配置和启动搜索活动。它可以帮助开发者...

    android搜索框

    本篇文章将详细讲解如何在Android中实现一个具有实时查询功能的搜索框,包括如何给EditText添加文本更改监听,以及如何在用户输入时使用模糊查询从数据库中检索数据并显示在ListView中。 首先,我们需要在布局文件...

    ArcGIS for Android的地点搜索示例

    **ArcGIS for Android 地点搜索示例** ArcGIS 是一款强大的地理信息系统(GIS),它提供了丰富的地图制作、地理分析和空间数据管理功能。ArcGIS for Android 是 Esri 公司专门为 Android 平台开发的 GIS 应用开发...

    android浮动搜索框示例

    本示例旨在教你如何在Android项目中集成和使用浮动搜索框,以便为用户提供简洁且直观的搜索体验。 浮动搜索框通常位于应用程序的顶部,可以轻松滑出或隐藏,这样就不会占用太多屏幕空间,同时又能快速访问搜索功能...

    android联系人搜索框

    综上所述,实现“android联系人搜索框”涉及的关键知识点包括:`SearchView`的使用、监听器的设置、`ContentResolver`和`ContactsContract`的使用来获取联系人数据,以及如何根据查询字符串实时过滤和显示结果。...

    Android学习之实现带自动补全与历史记录的自定义搜索框

    在Android应用开发中,创建一个具有自动补全和历史记录功能的自定义搜索框是提升用户体验的重要手段。本文将深入探讨如何实现这一功能,并通过两个Demo进行实例演示,以帮助开发者更好地理解和应用。 首先,我们要...

    android 搜索 输入字母自动检索

    当用户在搜索框输入字母时,应用需要实时过滤数据并更新列表。可以监听EditText的TextWatcher事件,每当文本变化时,使用过滤器(Filter)对数据集进行过滤,并调用Adapter的notifyDataSetChanged()方法刷新列表...

    android 通讯录(A-Z)带可模糊查询搜索框

    这篇教程“android 通讯录(A-Z)带可模糊查询搜索框”着重讲解如何创建一个能够进行字母索引排序和模糊查询的通讯录界面。在这个过程中,开发者会接触到Android的UI设计、数据处理以及搜索功能的实现。 首先,UI...

    浮Android项目动搜索框(SearchManager).rar

    3. 集成到系统全局搜索:当`android:includeInGlobalSearch="true"`时,你的应用将出现在系统的全局搜索框中。 总结,SearchManager是Android开发中实现高效、便捷搜索功能的关键工具。正确配置和使用SearchManager...

Global site tag (gtag.js) - Google Analytics