Пользовательский шрифт SearchView в android

Я пытаюсь установить настраиваемый шрифт в подсказку запроса android.support.v7.widget.SearchView и текст, введенный в View.I попытался динамически установить шрифт из assests в searchView, создав объект TypeFace, но Возникает проблема: «SearchView не содержит метод setTypeface (Typeface tf)». Я попытался создать собственный класс SearchView, но не смог найти его.

  private void setFont(String font1, String font2, String font3) { Typeface tf = null; tf = UiUtil.changeFont(MainActivity.this, font1); btn1.setTypeface(tf); tf = UiUtil.changeFont(MainActivity.this, font2); btn2.setTypeface(tf); tf = UiUtil.changeFont(MainActivity.this, font3); btn3.setTypeface(tf); tf = UiUtil.changeFont(MainActivity.this, font3); // no set typeface method.. } 

Обходной путь здесь состоит в том, чтобы сначала получить textView searchView, а затем изменить шрифт для textView:

  TextView searchText = (TextView) searchView.findViewById(android.support.v7.appcompat.R.id.search_src_text); Typeface myCustomFont = Typeface.createFromAsset(getAssets(),"fonts/myFont.ttf"); searchText.setTypeface(myCustomFont); 

Или, если вы не используете appcompatv7:

  int id = searchView.getContext().getResources().getIdentifier("android:id/search_src_text", null, null); TextView searchText = (TextView) searchView.findViewById(id); 

Затем установите шрифт как обычно.

Intereting Posts
ADT 20 Установка высоты / ширины макета в списке свойств Как проверить edittext с целыми числами в android? Проверьте изображение с половиной загрузки или нет в Android Как обновить пользовательский интерфейс деятельности от BroadCastReceiver Android: BitmapFactory.decodeByteArray дает пикселированное растровое изображение Создание файла .so для OpenH264 android Панель инструментов, расположенная поверх Appbar – CoordinatorLayout Несколько приложений ownCloud android на одном устройстве – ошибка INSTALL_FAILED_CONFLICTING_PROVIDER Интеграция roboelectric с студией android с градиентом всегда дает пакет org.junit не существует ошибка Вход в Facebook в мобильном браузере через приложение Facebook Восстановление иерархии представлений из сохраненного состояния не восстанавливает добавленные представления Странная проблема с намерением startActivity, которая заставляет мой сканер работать неправильно Android Glide: как загружать и кэшировать растровые изображения? Текстовое изображение показывает частичный текст Как использовать DecimalFormat для форматирования денег?