3

我知道如何更改标题中的颜色PreferenceCategory

public class PreferenceCategory1 extends PreferenceCategory {
    public PreferenceCategory1(Context context) {
        super(context);
    }

    public PreferenceCategory1(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    public PreferenceCategory1(Context context, AttributeSet attrs,
            int defStyle) {
        super(context, attrs, defStyle);
    }

    @Override
    protected void onBindView(View view) {
        super.onBindView(view);
        TextView titleView = (TextView) view.findViewById(android.R.id.title);
        titleView.setTextColor(Color.rgb(238, 120, 30));

    }
}

但我也想改变PreferenceCategory下面的元素之间的分隔线。我试图抓住列表视图并使用 setDivider() 方法:

  ListView v = (ListView)view.findViewById(android.R.id.list);
  v.setDivider(new ColorDrawable(Color.rgb(238, 120, 30)));

list但这会导致 NullPointerException ,因为它在 this 中找不到view。我知道我可以在 xml 文件中设置它并将其添加为样式,但如果可能的话,我希望在 java 中执行此操作。有什么建议么?

4

0 回答 0