在Android P上创建设置活动

Bry*_*yan 5 android android-preferences android-support-library androidx

SettingsActivity目前扩展了Android Studio生成的类,AppCompatPreferenceActivity扩展了它PreferenceActivity.活动中的每个首选项屏幕都使用PreferenceFragment; 从API级别28开始,不推荐使用它.文档声明您应该使用PreferenceFragmentCompat支持库中的类作为替代.

问题是PreferenceFragmentCompat扩展android.support.v4.app.Fragment(而不是android.app.Fragment)PreferenceActivity不支持.并没有PreferenceActivityCompat填补现在无关紧要的角色PreferenceActivity.

进一步混淆了这个问题; 新的androidx.preference支持库包括它自己的PreferenceFragment(扩展android.app.Fragment) PreferenceFragmentCompat(扩展新的androidx.fragment.app.Fragment).

我总是可以PreferenceActivity使用我自己的类重新创建功能,但为什么文档建议使用PreferenceFragmentCompat没有可行的替代方案PreferenceActivity?我错过了什么,或者偏好库的当前状态不起作用?


现在的SettingsActivity工作原样,但我通常想尝试超越曲线,特别是当某些东西被弃用时.

小智 0

不要使用 PreferenceActivity;常规的 AppCompatActivity 就可以很好地达到目的。如果您愿意,Android Studio 提供了一种在您的应用程序中创建设置活动的直接方法: 如何在 Android Studio 中创建新的设置活动