PreferenceFragment背景颜色

时间:2013-06-06 19:07:19

标签: android background-color preference

我使用的是PreferenceFragment(没有ListView),但我无法设置背景颜色,而且它似乎是透明的。

如何使用PreferenceFragment将背景颜色设置为白色?

编辑: 第一个截图: image 1

覆盖onCreateView不起作用 - image 2

4 个答案:

答案 0 :(得分:43)

此问题也得到了解答here

将以下代码添加到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;
}

答案 1 :(得分:2)

您还可以执行更改onViewCreated()方法中视图背景的操作。

@Override
public void onViewCreated(View view, Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);
    view.setBackgroundColor(getResources().getColor(R.color.YOUR_COLOR));
}

答案 2 :(得分:0)

尝试一下。

  @Override
  public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);
        getListView().setBackgroundColor(Color.BLACK);
  }

答案 3 :(得分:0)

我遇到了同样的要求(设置片段的 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>