android自带的浮动搜索框

1、定义显示搜索结果的activity

<activity android:name="org.cs.SearchActivity">
  <intent-filter >
                <action android:name="android.intent.action.SEARCH" />
            </intent-filter>
           <meta-data
                android:name="android.app.searchable"
                android:resource="@xml/searchable" />
</activity>
其中,searchable.xml文件:
<?xml version="1.0" encoding="utf-8"?>
<searchable xmlns:android="http://schemas.android.com/apk/res/android"
   android:label="@string/label"
    android:hint="@string/hint" <!--  搜索框中的提示内容   -->
    android:voiceSearchMode="showVoiceSearchButton|launchRecognizer"/>
       2、在application中声明
          
  <meta-data
            android:name="android.app.default_searchable"
            android:value="org.cs.SearchActivity" /> 
 声明之后,在应用中如果按下搜索键就可以直接调出搜索框架。
          也可以在一些view中的点击事件中通过调用 onSearchRequested() 方法来调用搜索框架
   
 View search = this.findViewById(R.id.main_search);	
if(search!=null){
	search.setOnClickListener(new OnClickListener() {
	@Override
	public void onClick(View v) {
	//设置这个界面的搜索按钮的点击事件
	onSearchRequested();
	}
	});
	}


3、在显示搜索结果的SearchActivity(第一步中定义的)中实现搜索逻辑
Intent intent = this.getIntent();
                String  string = intent.getStringExtra(SearchManager.QUERY);

                ------拿到你输入的关键字了,处理就随便你了
  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
浮动窗口是Android应用程序中可以浮动在其他应用程序上方的可视化界面元素。在Android Studio中创建浮动窗口需要以下几个步骤: 1. 创建一个新的类,命名为FloatingWindowGFG,可以在项目包路径中通过 "New -> Java 类" 来创建。 2. 在FloatingWindowGFG类中,实现一个名为isMyServiceRunning()的方法,该方法用于检查浮动窗口服务是否正在运行。下面是一个示例代码: ```java private boolean isMyServiceRunning() { ActivityManager manager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE); for (ActivityManager.RunningServiceInfo service : manager.getRunningServices(Integer.MAX_VALUE)) { if (FloatingWindowGFG.class.getName().equals(service.service.getClassName())) { return true; } } return false; } ``` 3. 另外,需要实现一个名为requestOverlayDisplayPermission()的方法,该方法用于请求悬浮窗口的显示权限。以下是一个示例代码: ```java private void requestOverlayDisplayPermission() { AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setCancelable(true); builder.setTitle("Screen Overlay Permission Needed"); builder.setMessage("Enable 'Display over other apps' from System Settings."); builder.setPositiveButton("Open Settings", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Intent intent = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION, Uri.parse("package:" + getPackageName())); startActivityForResult(intent, RESULT_OK); } }); AlertDialog dialog = builder.create(); dialog.show(); } ``` 以上就是在Android Studio中创建浮动窗口的基本步骤和示例代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值