2

去掉标题栏这是我的喜好的xml文件:myPreferences.xml:如何从PreferenceCategory在PreferenceActivity

<?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); 
} 

不工作。试图将标题设置为drawable。

@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); 
} 

NOPE。不起作用。

我所做的一切只会删除首选项活动的标题栏,而不会删除首选项类别。

有人能帮我吗?提前致谢。

回答

7

如果你不希望有上述一组偏好的标题栏,不使用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> 

HTH

+0

哦哈哈哈谢谢! – Tapehead

相关问题