Изменение цвета текста Searchview реализовано в OptionsMenu - PullRequest
1 голос
/ 13 июля 2020

Я реализовал представление поиска в меню параметров, используя следующий код меню.

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">
    <item
        android:id="@+id/search_toolBar"
        android:title="Search"
        android:icon="@drawable/search_icon"
        app:showAsAction="always|collapseActionView"
        app:actionViewClass="androidx.appcompat.widget.SearchView"
        />
</menu>

Как изменить цвет текста в моем представлении поиска. Я также хочу изменить подсказку searchview.

Ответы [ 2 ]

1 голос
/ 13 июля 2020

Вы не можете изменить его с OptionsMenu. Вместо этого вы можете попробовать программно, используя приведенный ниже код:

Kotlin с AndroidX:

 val searchView: SearchView = item.getActionView();
    val editText = searchView.findViewById<EditText>(androidx.appcompat.R.id.search_src_text)
    editText.setTextColor(getResources().getColor(R.color.white));
    editText.setHintTextColor(getResources().getColor(R.color.white));

Java с AndroidX:

SearchView searchView = (SearchView) item.getActionView();
    EditText editText = (EditText) searchView.findViewById(androidx.appcompat.R.id.search_src_text);
    editText.setTextColor(getResources().getColor(R.color.white));
    editText.setHintTextColor(getResources().getColor(R.color.white));
0 голосов
/ 13 июля 2020

В родительской теме добавьте следующее:

  1. В родительской теме добавьте следующее:

<item name="android:editTextColor">@android:color/darker_gray</item>

Обратите внимание, что вы можете замените "@ android: color / darker_gray" желаемым цветом.

Для изменения подсказки вы можете использовать это:

android:queryHint="my_hint_here"

следуйте по этой ссылке для подробнее

...