0

我正在为我的应用程序实现可搜索,我遇到了这个问题。如何更改可搜索的默认放大镜?默认看起来又大又丑,我更喜欢使用与我的菜单图标相同的可绘制对象。

丑陋的大玻璃

在可搜索配置中搜索“图标” - Android 开发者网站不会提供任何有用的信息。我还尝试将android:icon(这是选项卡中的一个Structure选项)添加到我的可搜索定义中,但它不起作用。

<searchable xmlns:android="http://schemas.android.com/apk/res/android"
    android:hint="@string/search_hint"
    android:icon="@drawable/ic_custom_test"
    android:includeInGlobalSearch="true"
    android:label="@string/search_label"
    android:searchSettingsDescription="@string/settings_description"
    android:searchSuggestAuthority="com.test.provider.SuggestionProvider"
    android:searchSuggestIntentAction="android.intent.action.VIEW"
    android:searchSuggestIntentData="content://com.test.provider.SuggestionProvider/info"
    android:searchSuggestSelection=" ?"
    android:searchSuggestThreshold="1" >
</searchable>

提前感谢您的帮助!

4

2 回答 2

0

实现你自己的搜索视图,从菜单文件夹中的 main.xml/activity_main(你的布局文件名) 中删除搜索项,然后创建一个新项目和你自己的搜索图标,.,

使用 iconfinder.com 获取不同的图标。

在您的活动中,在选项方法中,创建一个开关盒并在您单击此项目时添加功能。,。

于 2013-11-03T09:32:39.617 回答
0
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
       SearchManager localSearchManager1 = (SearchManager)getSystemService("search");
        SearchView localSearchView1 = (SearchView)menu.findItem(R.id.search).getActionView();
        localSearchView1.setSearchableInfo(localSearchManager1.getSearchableInfo(getComponentName()));
        localSearchView1.setIconifiedByDefault(true);
        if (Build.VERSION.SDK_INT >= 11)
        {
         SearchManager localSearchManager2 = (SearchManager)getSystemService("search");
          SearchView localSearchView2 = (SearchView)menu.findItem(R.id.search).getActionView();
          localSearchView2.setSearchableInfo(localSearchManager2.getSearchableInfo(getComponentName()));
          localSearchView2.setIconifiedByDefault(true) ;
        }
于 2015-06-24T19:04:41.103 回答