Android自定义PreferenceCategory的title颜色、字体大小写的方法

来源:互联网 发布:淘宝买手机是正品吗 编辑:程序博客网 时间:2024/05/22 12:17

本文讲述了Android设置PreferenceCategory背景颜色的方法。分享给大家供大家参考。(参考文章 Android设置PreferenceCategory背景颜色)
具体分析如下:
大家可能遇到,PreferenceCategory默认是黑色背景,而且默认情况下PreferenceCategory的title会将英文字母全部转为大写,看起来很不协调,那么怎么更改背景呢?我们可以通过自定义VIEW来实现。

只需要两步:
1、编写一个自定义类,继承自PreferenceCategory,里面可以设置文本颜色、字体大小、控制文本大小写等。
代码如下:

//自定义PreferenceCategory类,可以设置PreferenceCategory的title的字体大小、颜色,控制大小写等。public class MyPreferenceCategory extends PreferenceCategory{    public MyPreferenceCategory(Context context, AttributeSet attrs) {        super(context, attrs);    }    @Override    protected void onBindView(View view) {        super.onBindView(view);        if (view instanceof TextView) {            TextView tv = (TextView) view;            tv.setTextSize(12);//设置title文本的字体大小            tv.setAllCaps(false);//设置title文本不全为大写            tv.setTextColor(Color.parseColor("#34b5e5"));//设置title文本的颜色        }    }}

2、在xml调用时,把原来使用<PreferenceCategory></PreferenceCategory>的地方换成你自定义的MyPreferenceCategory 类的工程相对路径,如下面的
cl.fjnu.edu.cn.android_lab.lab4_SettingActivityTest.MyPreferenceCategory:

    <cl.fjnu.edu.cn.android_lab.lab4_SettingActivityTest.MyPreferenceCategory        android:title="In-line preferences">        <CheckBoxPreference            android:key="checkboxPref"            android:title="Checkbox preferences"            android:summary="This is a checkbox."            android:defaultValue="false">        </CheckBoxPreference>    </cl.fjnu.edu.cn.android_lab.lab4_SettingActivityTest.MyPreferenceCategory>

这样就实现了自定义PreferenceCategory。

作者:陈玲:原文地址

阅读全文
0 0