2013-07-09 34 views
1

我有一個帶有導航抽屜菜單的應用程序。我想在我的菜單中點擊一個項目時顯示一個設置片段。在PreferenceFragment中創建xml標題Android

當我點擊的項目,它要求:

Fragment fragment = new SettingsFragment(); 
FragmentManager fragmentManager = getFragmentManager(); 
fragmentManager.beginTransaction().replace(R.id.content_frame, fragment).commit(); 

的SettingsFragment被稱爲:

import java.util.List; 

import com.rss.R; 
import android.os.Bundle; 
import android.preference.PreferenceActivity.Header; 
import android.preference.PreferenceFragment; 


public class SettingsFragment extends PreferenceFragment { 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     // Load the preferences from an XML resource 
     addPreferencesFromResource(R.xml.preferences); 
    } 

    public void onBuildHeaders(List<Header> target) { 
     loadHeadersFromResource(R.xml.preferences, target); 
    } 

} 

的問題是,我有這樣的錯誤:

The method loadHeadersFromResource(int, List<PreferenceActivity.Header>) is undefined for the type SettingsFragment 

它似乎我不能使用PreferenceFragment的loadHeaderFromResources,我必須改爲PreferenceActivity?

下面是代碼也是我的preferences.xml的:

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

    <header android:fragment="com.rss.preferences.ExperienceUtilisateur" 
      android:icon="@drawable/ic_action_users" 
      android:title="User experience" 
      android:summary="Manage notifications" > 
     <extra android:name="someKey" android:value="someOtherHeaderValue" /> 
    </header> 

    <header android:icon="@drawable/ic_action_star_10" 
      android:title="Follow us" 
      android:summary="Help us"> 
     <intent android:action="android.intent.action.VIEW" android:data="http://market.android.com/details?id=com.app.mobideals" /> 
    </header> 

</preference-headers> 

回答

0

頭僅僅用PreferenceActivity使用不PreferenceFragment