1

我有一个现有的 Preference Activity(使用标准 XML 样式创建,并使用 Preferences 意图调用)。

我的问题,即使在 4.0+ 设备上,这看起来像旧样式(2.3)首选项。我希望它看起来像新的设置样式。有什么方法可以改变这种外观(也许应用特定的样式属性或其他东西)?

我以以下方式启动 Activity(注意:使用 ApplicationContext,我认为这是正确的):

 final Context cxt = this.getApplicationContext();
 final Intent i5 = new Intent(cxt, Preferences.class);
 startActivity(i5);

XML 是:

<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" >
    <PreferenceCategory android:title="@string/pref_notification_time" >
        <com.wolfsoft.dotd.util.TimePickerPreference
            android:defaultValue="07:30"
            android:key="notif_time"
            android:summary="@string/summary_notif_time"
            android:title="@string/title_notif_time" />
    </PreferenceCategory>
    <PreferenceCategory android:title="@string/pref_notif_onoff" >
        <CheckBoxPreference
            android:defaultValue="true"
            android:key="notif_pref"
            android:summary="@string/summary_notif_preference"
            android:title="@string/title_notif_preference" />
        </PreferenceCategory>
        <PreferenceCategory android:title="@string/pref_notif_category" >
        <CheckBoxPreference
            android:defaultValue="true"
            android:key="notif_game_pref"
            android:summary="@string/pref_game_notif_sum"
            android:title="@string/pref_game_notif_sum_title" />
        <CheckBoxPreference
            android:defaultValue="true"
            android:key="notif_business_pref"
            android:summary="@string/pref_business_notif_sum"
            android:title="@string/pref_business_notif_sum_title" />
        <CheckBoxPreference
            android:defaultValue="true"
            android:key="notif_entertainment_pref"
            android:summary="@string/pref_entertainment_notif_sum"
            android:title="@string/pref_entertainment_notif_sum_title" />
        <CheckBoxPreference
            android:defaultValue="true"
            android:key="notif_lifestyle_pref"
            android:summary="@string/pref_lifestyle_notif_sum"
            android:title="@string/pref_lifestyle_notif_sum_title" />
        <CheckBoxPreference
            android:defaultValue="true"
            android:key="notif_personalization_pref"
            android:summary="@string/pref_personalization_notif_sum"
            android:title="@string/pref_personalization_notif_sum_title" />
        <CheckBoxPreference
            android:defaultValue="true"
            android:key="notif_local_pref"
            android:summary="@string/pref_local_notif_sum"
            android:title="@string/pref_local_notif_sum_title" />
    </PreferenceCategory>    
</PreferenceScreen> 

我当前的屏幕如下所示:当前首选项屏幕

我希望它看起来像这样:在此处输入图像描述

4

0 回答 0