По сути, я настроил SettingsFragment, как это сделано в официальном руководстве по Android здесь.
В своей деятельности я начинаю фрагмент с..
Objects.requireNonNull(getSupportActionBar()).hide();
getSupportFragmentManager()
.beginTransaction()
.replace(R.id.main, new SettingsFragment(), SETTINGS_FRAGMENT_TAG)
.commit();
Проблема в том, что фрагмент отображается, но имеет полностью прозрачный фон, и я вижу действие под ним.
макет определен в root_preferences.xml, но, похоже, там нет способа стилизовать
или что-то еще. Я предполагаю, что он унаследует тему MainActivity.
В моем манифесте эта тема...
android:theme="@style/Base.Theme.MyApp"
Мой файл themes.xml..
@color/my_red
@color/dark_background
@color/dark_background
@color/my_red
@color/dark_background
@color/dark_background
Резюме: Мой фрагмент настроек отображается с прозрачным фоном, и под ним я вижу MainActivity. Я не знаю, как это исправить, где и как стилизовать фрагмент настроек.
В root_preferences.xml я попробовал установить фон в корневом теге..
xmlns:android="http://schemas.android.com/apk/res/android"
android:background="@color/dark_background">
..но без эффекта.
root_preferences.xml
xmlns:android="http://schemas.android.com/apk/res/android"
android:background="@color/dark_background">
colors.xml
#ff322C2C
#FFf9f9f9
#ffA84B4B
Подробнее здесь: https://stackoverflow.com/questions/786 ... inactivity