2

这是我的首选项 xml 文件:myPreferences.xml:

<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<PreferenceCategory>
    <EditTextPreference android:key="name" android:title="Name" android:inputType="text" android:defaultValue="" />
    <EditTextPreference android:key="email" android:title="Email" android:inputType="textEmailAddress" android:defaultValue="" />
    <EditTextPreference android:key="phone" android:title="Phone Number" android:inputType="phone" android:defaultValue="" />
    <EditTextPreference android:key="zipcode" android:title="Zip Code" android:inputType="number" android:defaultValue="" />
</PreferenceCategory>
</PreferenceScreen>

这是我的 AndroidManifest.xml 中的首选项活动声明:

<activity
        android:name=".activities.MyPreferencesActivity"
        android:screenOrientation="portrait"
        android:theme="@android:style/Theme.NoTitleBar" />

而且,这是我之前尝试过应用于我的活动的一种风格:

 <activity
     android:name=".activities.MyPreferencesActivity"
     android:screenOrientation="portrait"
     android:theme="@android:style/PreferenceTheme" />

 <style name="PreferenceTheme">
     <item name="android:background">@drawable/background_preferences</item>
     <item name="android:windowNoTitle">true</item>
 </style>

它不起作用。

然后,我尝试通过 myPreferencesActivity 的 onCreate 中的 java 代码进行操作:

 @Override
 protected void onCreate(Bundle savedInstanceState) {
     requestWindowFeature(Window.FEATURE_NO_TITLE);
     super.onCreate(savedInstanceState);
 addPreferencesFromResource(R.xml.myPreferences);
 }

不工作。尝试将标题设置为可绘制对象。

 @Override
 protected void onCreate(Bundle savedInstanceState) {
     requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
     super.onCreate(savedInstanceState);
     addPreferencesFromResource(R.xml.preferences_profile);
     getWindow().setFeatureDrawableResource(Window.FEATURE_CUSTOM_TITLE, R.drawable.profile_banner);
 }

不。不工作。

我所做的一切都只删除了偏好活动的标题栏,而不是偏好类别。

有人可以帮我吗?提前致谢。

4

1 回答 1

10

如果您不想在一组首选项上方有一个标题栏,请不要使用 a PreferenceCategory,因为它没有任何用途,只需将您的所有首选项放入PreferenceScreen元素中:

<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">

    <EditTextPreference android:key="name" android:title="Name" android:inputType="text" android:defaultValue="" />
    <EditTextPreference android:key="email" android:title="Email" android:inputType="textEmailAddress" android:defaultValue="" />
    <EditTextPreference android:key="phone" android:title="Phone Number" android:inputType="phone" android:defaultValue="" />
    <EditTextPreference android:key="zipcode" android:title="Zip Code" android:inputType="number" android:defaultValue="" />

</PreferenceScreen>

高温高压

于 2012-05-11T17:58:12.617 回答