Вы должны получить доступ к дочернему элементу edittext внутри окна поиска и вместо этого изменить фоновый ресурс этого представления. Я использовал ваши xml файлы и просто изменил вашу onCreateOptionsMenu
функцию следующим образом:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.main_menu, menu);
MenuItem searchItem = menu.findItem(R.id.action_search);
SearchView searchView = (SearchView) searchItem.getActionView();
searchView.setImeOptions(EditorInfo.IME_ACTION_DONE);
//This is where you find the edittext and set its background resource
View searchPlate = searchView.findViewById(androidx.appcompat.R.id.search_src_text);
searchPlate.setBackgroundResource(R.drawable.rounded_search);
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String query) {
return false;
}
@Override
public boolean onQueryTextChange(String newText) {
Log.d("Text changed", newText);
return false;
}
});
return true;
}
А вот дополнительная xml отрисовка для фонового ресурса, который вы используете:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#ffffff"/>
<corners android:radius="8dp"/>
</shape>
Изменение значения радиуса изменяет округлость углов.