2

我的基本偏好屏幕看起来像这样,我不知道为什么。有趣的是,第一次总是魅力,但如果我来回多次进入偏好设置屏幕,它就会看起来像这样。顺便说一句,这是一个使用 Rajawali 引擎的动态壁纸。你觉得跟引擎有关系吗?因为我从未在其他动态壁纸中经历过这种情况。

在此处输入图像描述

<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
android:key="sharedprefs"
android:title="@string/settings_title" >

<PreferenceCategory android:title="@string/first_header" >

</PreferenceCategory>
<PreferenceCategory android:title="@string/more_header" >
<Preference
    android:key="market"
    android:summary="@string/market_sum"
    android:title="@string/market_title" >
</Preference>
<Preference
    android:key="bytom"
    android:summary="@string/about_sum"
    android:title="@string/about_title" >
</Preference>
</PreferenceCategory>
</PreferenceScreen>

在清单中

<activity
    android:name=".Settings"
    android:exported="true">

</activity>

活动中

package com.mydomain.wallpaper.mywallpaper;




import android.content.Intent;
import android.content.SharedPreferences;
import android.net.Uri;
import android.os.Bundle;
import android.preference.Preference;
import android.preference.PreferenceActivity;


public class Settings extends PreferenceActivity implements         SharedPreferences.OnSharedPreferenceChangeListener {

protected void onCreate(Bundle icicle) {
super.onCreate(icicle);

getPreferenceManager().setSharedPreferencesName(Service.SHARED_PREFS_NAME);
addPreferencesFromResource(R.xml.settings);
        getPreferenceManager().getSharedPreferences().registerOnSharedPreferenceChangeListener(this    );


}

protected void onResume() {
super.onResume();
}

protected void onDestroy() {
getPreferenceManager().getSharedPreferences()
        .unregisterOnSharedPreferenceChangeListener(this);
super.onDestroy();
}

public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,
    String key) {
}
}
4

1 回答 1

1

不确定这是否有帮助,但我发现我们有一个导致问题的样式属性。来自“droidin.net”的这篇文章从 2009 年开始提供帮助:

https://groups.google.com/forum/#!topic/android-developers/G_WceF9dfPg

原来无论出于何种原因(可能只是复制一些示例代码而没有太多思考)我在我的 theme.xml 中有这一行

<item name="android:windowBackground">@null</item>. 

一旦我删除它 - 我的重绘问题就消失了

于 2014-01-03T21:11:33.823 回答