Значок в меню параметров не меняется

#android-studio #android-layout #android-optionsmenu

Вопрос:

Я пытаюсь изменить значок с помощью Xml и кода, но Android studio загружает значок по умолчанию.Скажи мне, в чем моя ошибка

 override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) {  inflater.inflate(R.menu.search_menu, menu)  val searchItem = menu.findItem(R.id.gps_img)  val searchView = searchItem.actionView as SearchView  searchView.queryHint = "Current city?"   searchItem.setIcon(R.drawable.ic_baseline_gps_fixed_24)    searchView.isSubmitButtonEnabled = true  searchView.setOnQueryTextListener(this) }  lt;menu xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:android="http://schemas.android.com/apk/res/android"gt;  lt;item  android:title="@string/gps"  android:id="@ id/gps_img"  app:actionViewClass="androidx.appcompat.widget.SearchView"  app:showAsAction="ifRoom"  android:icon="@drawable/ic_baseline_gps_fixed_24"  /gt;  

Ответ №1:

Переопределите public void onPrepareOptionsMenu(@NonNull Menu menu) метод, напишите логику изменения значка внутри него, также вызывайте invalidateOptionsMenu() метод всякий раз, когда вы хотите изменить значок меню.