Reputation: 161
I have a pretty weird issue. In my SettingsActivity
, I have a DropDownPreference (the one that displays a list when clicked), and it works fine on Portrait mode.
However, when I go into Landscape mode, whenever the preference is clicked, it quickly disappears after being displayed, as if I had pressed the screen twice.
Here is my style, although I doubt there's something to do with it:
<style name="SettingsFragment">
<item name="android:navigationBarColor">?navBackground</item>
<item name="android:statusBarColor">?colorPrim</item>
<item name="android:colorBackground">?colorPrim</item>
<item name="android:colorForeground">?textForeground</item>
<item name="android:textColor">?textForeground</item>
<item name="alertDialogTheme">@style/DialogTheme</item>
<item name="colorAccent">?accentVariant</item>
<item name="preferenceCategoryTitleTextColor">?accentVariant</item>
</style>
Notes: My phone is a Samsung Galaxy Note 10, running Android 12 (API 31).
EDIT: Posting the activity's source code:
public class SettingsActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
ActivityUtils.applyTheme(this);
getTheme().applyStyle(R.style.SettingsFragment, true);
super.onCreate(savedInstanceState);
setContentView(R.layout.settings_activity);
if (savedInstanceState == null) {
getSupportFragmentManager()
.beginTransaction()
.replace(R.id.settingsContainer, new SettingsFragment())
.commit();
}
}
public static class SettingsFragment extends PreferenceFragmentCompat {
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
setPreferencesFromResource(R.xml.settings, rootKey);
}
}
}
PS: Parent theme does not change any attributes aside colors.
Upvotes: 1
Views: 132