我正在尝试使用带有工具栏的 Android Jetpack 设置 指南。指南中说根标签应为 <PreferencesScreen>,因此我无法在 xml 中包含工具栏。我使用的是 NoActionBar 主题。根据 Android Jetpack 指南 支持应用栏变体建议从活动中删除顶部栏,而是在每个目标片段中定义它。所以我有以下文件:
preferences.xml
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<SwitchPreferenceCompat
app:key="notifications"
app:title="Enable message notifications" />
<Preference
app:key="feedback"
app:summary="Report technical issues or suggest new features"
app:title="Send feedback" />
</PreferenceScreen>
SettingsFragment.kt
class SettingsFragment: PreferenceFragmentCompat(){
override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
setPreferencesFromResource(R.xml.preferences, rootKey)
}
}
一切运行良好,设置片段也能够正常打开,但由于我使用了NoActionBar主题,似乎没有办法在不在main_activity中定义的情况下添加工具栏。我的评估正确吗?还是说我仍然可以在首选项片段中添加自定义工具栏?