检查Android设备是否有搜索硬件按钮

我需要帮助弄清楚如何检查设备是否配备了搜索硬件按钮.这可能吗?

编辑:我说的是找出设备是否有搜索硬件按钮.简单的问题.每个Android设备都有一组硬件按钮;菜单,主页按钮,后退按钮和搜索按钮.但是有些设备只配备了部分设备,而不是全部.

编辑2:我问的原因是因为我想在我的UI中显示一个软件按钮,如果设备没有配备硬件按钮.我在我的活动中使用searchable界面.我没有遵循EditText / TextField方法.

解决方法:

我认为你不需要检测它是否真的有一个搜索硬件按钮.该框架将帮助你(虽然,我确信一旦冰淇淋三明治发布,这个过程将被简化)

目前,唯一没有硬件搜索的设备是Honeycomb平板电脑.因此,通过使用android:targetSdkVersion =“11”(或更高版本),将实现OnQueryTextListener添加到Fragment或Activity,然后添加如下内容:

@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
    inflater.inflate(R.menu.notebooks_menu, menu);
    final SearchView sv = new SearchView(getActivity());
    sv.setOnQueryTextListener(this);
    menu.findItem(R.id.search_notebooks).setActionView(sv);
}

你基本上可以解决这个问题.现在,为了让它在Honeycomb之前的设备上工作,您可能需要使用compatibility library,或者在代码中使用反射或其他一些防护.

编辑

三星Galaxy S II没有专用的硬件搜索按钮,但如果您按住菜单按钮几秒钟,它将开始充当硬件搜索按钮.

上一篇:STM32 相同头文件名称的路径问题


下一篇:如何在python脚本中获取方波的频率