在android中需要更改SearchView光标颜色并将颜色加下划线为白色

时间:2016-09-28 09:19:41

标签: android android-layout android-studio android-fragments

我需要帮助才能将SearchView光标颜色和线下颜色更改为白色..下面是我的代码

            <SearchView
            android:id="@+id/search"
            style="@style/CustomSearchView"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:closeIcon="@drawable/ic_close_white"
            android:gravity="bottom"
            android:iconifiedByDefault="false"
            android:queryHint="@string/search_store"
            android:searchHintIcon="@null" />

<style name="CustomSearchView" parent="MyMaterialTheme">
    <item name="android:textSize">6sp</item>
    <item name="submitBackground">@android:color/transparent</item>
    <item name="queryBackground">@android:color/transparent</item>
    <item name="android:textColor">@android:color/white</item>
    <item name="android:textColorHint">@color/label_input_color</item>
    <item name="android:textCursorDrawable">@drawable/cursor</item>
    <item name="colorControlActivated">@android:color/white</item>
</style>

请帮忙。

2 个答案:

答案 0 :(得分:1)

要更改搜索查询下方行的颜色,请尝试以CustomSearchView样式定义backgroundTint:

具有向后兼容性支持:

<item name="backgroundTint">@color/colorWhite</item>

如果不起作用,请尝试不具有向后兼容性支持:

<item name="android:backgroundTint">@color/colorWhite</item>

但是,此解决方案并不完美,因为它引用了其他searchView元素。

答案 1 :(得分:0)

更改下划线颜色

    View searchplate = (View)searchView.findViewById(android.support.v7.appcompat.R.id.search_plate);
    searchplate.getBackground().setColorFilter(Color.DKGRAY, PorterDuff.Mode.MULTIPLY);