设置首选项屏幕的文本颜色

时间:2013-01-09 12:26:26

标签: android radio-group textcolor preferencescreen

朋友我创建了一个listpreferences屏幕,它工作正常,但我想更改列表中出现的文本颜色和RadioGroup项目。所以任何人都可以帮助我。

 <?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" >
        <ListPreference      
         android:entries="@array/gametype"
         android:entryValues="@array/gametype"
         android:key="listpref"
         android:summary=""
         android:title="Set Game Level" />
</PreferenceScreen>

这是我的首选项屏幕。     单击listpreferences项后,它会显示一个对话框,其中有三个选项     所以我想改变那个radiobutton文本和列表项文本的颜色。

这是java代码:

        @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        addPreferencesFromResource(R.xml.prefs);
        SharedPreferences sp=getPreferenceScreen().getSharedPreferences();
        Preference pref=findPreference("listpref");
        ListPreference lp=(ListPreference)pref;
        pref.setSummary(lp.getValue());
        sp.registerOnSharedPreferenceChangeListener(this);


    }

    @Override
    public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,
            String key) {
        Preference pref=findPreference(key);
        ListPreference lp=(ListPreference)pref;
        pref.setSummary(lp.getValue());
    }

4 个答案:

答案 0 :(得分:1)

public void setcolor(int position){
for(int i=0;i<4;i++)
{
    if(i==position)
    {
        list.getChildAt(i).setBackgroundColor(Color.rgb(238, 180,    180));
    }
    else{
        list.getChildAt(i).setBackgroundColor(Color.WHITE);
    }
}

答案 1 :(得分:0)

试试这个;

RadioGroup.setTextColor(Color.GREEN);

这是一个很好的解决方案

答案 2 :(得分:0)

如果你想在整个应用程序中保持一致的着色方案,我建议学习如何添加一个或多个主题。这应该让你开始http://developer.android.com/guide/topics/ui/themes.html

答案 3 :(得分:0)

使用Html.fromHtml设置文字样式。

mPodFolderPref.setTitle(Html.fromHtml("<font color='red'>" +  mPodFolderPref.getTitle() + "</font>"));
mPodFolderPref.setSummary(Html.fromHtml("<font color='red'>" +  mPodFolderPref.getSummary() + "</font>"));

Html.fromHtml可以为你做很多事。