【问题标题】:Want to remove search icon as hint from the searchView想要从 searchView 中删除搜索图标作为提示
【发布时间】:2015-10-21 06:47:54
【问题描述】:
    int magId = getResources().getIdentifier("android:id/search_mag_icon", null, null);
    ImageView magImage = (ImageView) mSearchView.findViewById(magId);
    magImage.setLayoutParams(new LinearLayout.LayoutParams(0, 0));
    magImage.setVisibility(View.GONE);

我正在使用上面的代码,但它没有删除search 图标。我已经设置了

 mSearchView.setIconified(false); 

不明白为什么它仍然显示图标。

【问题讨论】:

标签: android searchview


【解决方案1】:

我知道这已经晚了,但是如果其他人想解决这个问题,那么

1) 在style.xml中添加

<style name="MyToolbar" parent="AppTheme">
    <item name="searchViewStyle">@style/searchStyle</item>
</style>

如果您的最低 API 级别 >= 21

<style name="searchStyle" parent="Widget.AppCompat.SearchView.ActionBar">
    <item name="android:queryHint">@string/search</item>
    <item name="android:searchIcon">@null</item>  
</style>

其他

<style name="searchStyle" parent="Widget.AppCompat.SearchView.ActionBar">
    <item name="queryHint">@string/search</item>
    <item name="searchIcon">@null</item>
</style>

2) 最后在工具栏中添加你的样式

<android.support.v7.widget.Toolbar
        android:id="@+id/my_toolbar"
        app:theme="@style/MyToolbar"
        />

【讨论】:

  • 谢谢,经过无休止的搜索,唯一有效的答案。
【解决方案2】:

如果你使用 appcompat-v7 > 24,你应该试试这个

<style name="AppTheme.SearchView" parent="Widget.AppCompat.SearchView">
    <item name="searchHintIcon">@null</item>
    <item name="searchIcon">@null</item>
    <item name="queryBackground">@android:color/transparent</item>
</style>

【讨论】:

    【解决方案3】:

    这对我有用:

    <android.support.v7.widget.SearchView
                    ...
                    app:iconifiedByDefault="false"
                    app:searchIcon="@null"
                    />
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-01-31
      • 2013-12-17
      • 2016-12-23
      • 2018-05-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多