我的SharedPreferences只显示不可见的文本

时间:2011-04-07 16:59:05

标签: android layout preferences invisible

我已按照“书中”的说明在我的应用程序中生成了一个SharedPreferences屏幕。没什么特别的。但我只能在屏幕上看到隐形偏好(模拟器和手机)。

这是屏幕截图(抱歉,这是链接。我不允许发布图片): Print Screens of Properties

请注意,我尝试使用默认主题和Light - 无标题

这是代码: XML /的preferences.xml:

    <?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http: //schemas. android.com/apk/res/android">
<PreferenceCategory
            android:title="@string/menukad">
    <CheckBoxPreference
        android:key="menukad12"
        android:defaultValue="false"
        android:title="Nikud in the Text?"
        android:summary="@string/menukad" />

    <CheckBoxPreference
                        android:title="Checkbox Preference"
                        android:defaultValue="false"
                        android:summary="This preference can be true or false"
                        android:key="checkboxPref" />
</PreferenceCategory>       

</PreferenceScreen>

myPreferences.java

    package com.android.orvishua.mishneTorah;


import android.os.Bundle;
import android.preference.PreferenceActivity;
import android.view.KeyEvent;

public class myPreferences extends PreferenceActivity 
{   
    @Override    
    protected void onCreate(Bundle savedInstanceState) {        
        super.onCreate(savedInstanceState);
        addPreferencesFromResource(R.xml.preferences);    
        }

    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (keyCode == KeyEvent.KEYCODE_BACK) {
            chapterSave.setReLoad(true);
        }
        return super.onKeyDown(keyCode, event);
    }

}

阅读偏好:

public SharedPreferences myprefs;
public boolean menukad; 


         myprefs = PreferenceManager.getDefaultSharedPreferences(getBaseContext()) ;
        menukad = myprefs.getBoolean("menukad12", false);

Manifest(所有其他活动都使用默认样式。没有更改):

<activity android:name=".myPreferences" android:label="@string/app_name" />

<activity android:name=".myPreferences" android:theme="@android:style/Theme_Light_NoTitleBar" android:label="@string/app_name" />

有人能帮助我吗?

1 个答案:

答案 0 :(得分:0)

尝试在styles.xml中创建自己的主题(如果没有,请在values文件夹中创建)

例如

<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="YourStyle" parent="android:Theme.Light">
    <item name="android:listViewStyle">@style/Widget.ListView</item>
    <item name="android:textColor">@color/your_color</item>
    <item name="android:windowNoTitle">true</item>
</style>

<style name="Widget" parent="android:Widget">
</style>

<style name="Widget.ListView">
    <item name="android:background">@color/white</item>
    <item name="android:divider">@color/gray_division</item>
    <item name="android:dividerHeight">2dip</item>       
</style>
</resources>

我希望这会有所帮助