我正在使用一个没有ListView的PreferenceFragment,但是无法设置背景颜色,似乎是透明的。
如何使用PreferenceFragment将背景颜色设置为白色?
编辑:
第一个屏幕截图:
重写onCreateView不起作用 -
我正在使用一个没有ListView的PreferenceFragment,但是无法设置背景颜色,似乎是透明的。
如何使用PreferenceFragment将背景颜色设置为白色?
编辑:
第一个屏幕截图:
重写onCreateView不起作用 -
这个问题在这里也有答案。
将下面的代码添加到你的PreferenceFragment中,可以让你添加背景颜色、图片等等。
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = super.onCreateView(inflater, container, savedInstanceState);
view.setBackgroundColor(getResources().getColor(android.R.color.your_color));
return view;
}
还可以在onViewCreated()
方法中更改视图的背景。
@Override
public void onViewCreated(View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
view.setBackgroundColor(getResources().getColor(R.color.YOUR_COLOR));
}
我面临着相同的需求(为设置片段创建Androidx偏好屏幕背景)。
以下代码对我有效。(在themes.xml文件中)
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Base application theme. -->
<style name="Theme.MyApplication" parent="Theme.MaterialComponents.DayNight.DarkActionBar">
...............
<!-- Add below -->
<item name="preferenceTheme">@style/preference</item>
</style>
<style name="preference" parent="Theme.AppCompat">
<item name="android:background">@color/purple_200</item>
</style>
</resources>